没有合适的资源?快使用搜索试试~ 我知道了~
首页GD32F10x 固件库使用指南
GD32F10x 固件库使用指南
需积分: 5 2 下载量 171 浏览量
更新于2024-07-09
收藏 8.05MB PDF 举报
"GD32F10x固件库使用指南"
本文档是GD32F10x系列基于Arm Cortex-M3的32位微控制器的固件库使用指南,详细介绍了如何有效地使用和理解该系列芯片的固件库。GD32F10x固件库提供了对芯片外设的高级接口,简化了开发流程,帮助开发者快速实现应用功能。
1.1. 文档和固件库规则
文档中对外设的缩写进行了标准化,例如ADC代表模拟数字转换器,BKP表示备份寄存器等。命名规则遵循一定的规范,使得代码具有良好的可读性和一致性。
2. 固件库概述
固件库包含了多个文件夹,如Examples、Firmware、Template和Utilities,分别用于存放示例代码、核心库文件、项目模板和辅助工具。每个文件夹都有特定的功能和包含的文件类型,方便开发者理解和使用。
2.1. 文件组织结构
- Examples文件夹:包含了使用固件库的各种示例程序,帮助开发者了解如何在实际项目中应用固件库。
- Firmware文件夹:存放了固件库的核心文件,包括头文件和源代码,提供了对外设的操作函数。
- Template文件夹:提供了一些基本的项目模板,可以作为新项目的起点。
- Utilities文件夹:包含了辅助工具和实用程序,如配置工具或编译脚本。
2.2. 固件库文件描述
固件库的文件主要分为头文件(.h)和源文件(.c),头文件包含了函数声明和宏定义,源文件实现了具体的函数功能。这些文件针对不同的外设进行分类,如ADC、BKP、CAN、CRC、DAC、DBG、DMA、ENET、EXTI、FMC、FWDGT等。
3. 外设固件库
每个外设固件库部分都详细介绍了外设的寄存器描述和库函数说明,例如:
- ADC:提供了模拟数字转换器的初始化、配置、转换控制和结果读取等功能。
- BKP:涵盖了备份寄存器的设置和数据存取。
- CAN:包含CAN控制器的配置、消息发送和接收的库函数。
- CRC:提供了循环冗余校验计算的库函数。
- DAC:支持数字模拟转换器的设置和数据写入操作。
- DBG:调试接口的寄存器和库函数说明。
- DMA:涵盖了直接存储器访问的配置、通道管理和传输控制。
- ENET:提供了以太网控制器的相关功能,如MAC配置、帧收发等。
- EXTI:外部中断/事件控制器的寄存器和中断处理函数。
- FMC:灵活内存控制器的库函数,用于与外部存储器交互。
- FWDGT:看门狗定时器的设置和操作函数。
- 其他外设,如GPIO、I2C、IWDG、TIM、UART、SPI等,都有类似的详细描述和库函数说明。
这些固件库函数通常包括初始化、配置、读写操作以及状态检查等功能,使得开发者能够便捷地操控GD32F10x上的各个外设,提高开发效率。通过参考此指南,开发者可以深入理解GD32F10x芯片的硬件特性,并利用固件库轻松实现各种功能。
GD32F10x 固件库使用指南
16
表 3-435. 函数 pmu_backup_write_disable ............................................................................................... 312
表 3-436. 函数 pmu_flag_get ........................................................................................................................ 313
表 3-437. 函数 pmu_flag_clear ..................................................................................................................... 313
表 3-438. RCU 寄存器(中密度、高密度、超高密度产品) ......................................................................... 314
表 3-439. RCU 寄存器(互联型产品) ........................................................................................................... 315
表 3-440. RCU 库函数 ...................................................................................................................................... 315
表 3-441. 枚举类型 rcu_periph_enum.......................................................................................................... 316
表 3-442. 枚举类型 rcu_periph_sleep_enum .............................................................................................. 317
表 3-443. 枚举类型 rcu_periph_reset_enum .............................................................................................. 318
表 3-444. 枚举类型 rcu_flag_enum .............................................................................................................. 319
表 3-445. 枚举类型 rcu_int_flag_enum ........................................................................................................ 319
表 3-446. 枚举类型 rcu_int_flag_clear_enum ............................................................................................. 320
表 3-447. 枚举类型 rcu_int_enum ................................................................................................................ 320
表 3-448. 枚举类型 rcu_osci_type_enum .................................................................................................... 320
表 3-449. 枚举类型 rcu_clock_freq_enum .................................................................................................. 321
表 3-450. 函数 rcu_deinit ............................................................................................................................... 321
表 3-451. 函数 rcu_periph_clock_enable ................................................................................................... 321
表 3-452. 函数 rcu_periph_clock_disable .................................................................................................. 322
表 3-453. 函数 rcu_periph_clock_sleep_enable ........................................................................................ 323
表 3-454. 函数 rcu_periph_clock_sleep_disable ....................................................................................... 324
表 3-455. 函数 rcu_periph_reset_enable .................................................................................................... 324
表 3-456. 函数 rcu_periph_reset_disable ................................................................................................... 325
表 3-457. 函数 rcu_bkp_reset_enable ......................................................................................................... 326
表 3-458. 函数 rcu_bkp_reset_disable ........................................................................................................ 327
表 3-459. 函数 rcu_system_clock_source_config .................................................................................... 327
表 3-460. 函数 rcu_system_clock_source_get .......................................................................................... 328
表 3-461. 函数 rcu_ahb_clock_config ......................................................................................................... 328
表 3-462. 函数 rcu_apb1_clock_config ....................................................................................................... 329
表 3-463. 函数 rcu_apb2_clock_config ....................................................................................................... 330
表 3-464. 函数 rcu_ckout0_config ............................................................................................................... 330
表 3-465. 函数 rcu_pll_config ....................................................................................................................... 331
表 3-466. 函数 rcu_predv0_config ............................................................................................................... 332
表 3-467. 函数 rcu_predv0_config ............................................................................................................... 332
表 3-468. 函数 rcu_predv1_config ............................................................................................................... 333
表 3-469. 函数 rcu_pll1_config ..................................................................................................................... 334
表 3-470. 函数 rcu_pll2_config ..................................................................................................................... 334
表 3-471. 函数 rcu_adc_clock_config ......................................................................................................... 335
表 3-472. 函数 rcu_usb_clock_config ......................................................................................................... 335
表 3-473. 函数 rcu_rtc_clock_config ........................................................................................................... 336
表 3-474. 函数 rcu_i2s1_clock_config ........................................................................................................ 337
表 3-475. 函数 rcu_i2s2_clock_config ........................................................................................................ 337
表 3-476. 函数 rcu_flag_get .......................................................................................................................... 338
表 3-477. 函数 rcu_all_reset_flag_clear ...................................................................................................... 339
表 3-478. 函数 rcu_interrupt_flag_get ......................................................................................................... 339
GD32F10x 固件库使用指南
17
表 3-479. 函数 rcu_interrupt_flag_clear ...................................................................................................... 340
表 3-480. 函数 rcu_interrupt_enable ........................................................................................................... 341
表 3-481. 函数 rcu_interrupt_disable .......................................................................................................... 342
表 3-482. 函数 rcu_osci_stab_wait .............................................................................................................. 343
表 3-483. 函数 rcu_osci_on ........................................................................................................................... 343
表 3-484. 函数 rcu_osci_off .......................................................................................................................... 344
表 3-485. 函数 rcu_osci_bypass_mode_enable ........................................................................................ 345
表 3-486. 函数 rcu_osci_bypass_mode_disable ....................................................................................... 345
表 3-487. 函数 rcu_hxtal_clock_monitor_enable ...................................................................................... 346
表 3-488. 函数 rcu_hxtal_clock_monitor_disable ..................................................................................... 346
表 3-489. 函数 rcu_irc8m_adjust_value_set .............................................................................................. 347
表 3-490. 函数 rcu_deepsleep_voltage_set ............................................................................................... 347
表 3-491. 函数 rcu_clock_freq_get .............................................................................................................. 348
表 3-492. RTC 寄存器 ...................................................................................................................................... 349
表 3-493. RTC 库函数 ...................................................................................................................................... 349
表 3-494. 函数 rtc_configuration_mode_enter .......................................................................................... 349
表 3-495. 函数 rtc_configuration_mode_exit ............................................................................................. 350
表 3-496. 函数 rtc_counter_set..................................................................................................................... 350
表 3-497. 函数 rtc_prescaler_set.................................................................................................................. 351
表 3-498. 函数 rtc_lwoff_wait ........................................................................................................................ 351
表 3-499. 函数 rtc_register_sync_wait ........................................................................................................ 352
表 3-500. 函数 rtc_alarm_config .................................................................................................................. 352
表 3-501. 函数 rtc_counter_get .................................................................................................................... 353
表 3-502. 函数 rtc_divider_get ...................................................................................................................... 353
表 3-503. 函数 rtc_flag_get ........................................................................................................................... 354
表 3-504. 函数 rtc_flag_clear ........................................................................................................................ 355
表 3-505. 函数 rtc_interrupt_flag_get .......................................................................................................... 355
表 3-506. 函数 rtc_interrupt_flag_clear ....................................................................................................... 356
表 3-507. 函数 rtc_interrupt_enable ............................................................................................................ 357
表 3-508. 函数 rtc_interrupt_disable ........................................................................................................... 357
表 3-509. SDIO 寄存器 ..................................................................................................................................... 358
表 3-510. SDIO 库函数 ..................................................................................................................................... 359
表 3-511. 函数 sdio_deinit ............................................................................................................................. 360
表 3-512. 函数 sdio_clock_config ................................................................................................................ 361
表 3-513. 函数 sdio_hardware_clock_enable ............................................................................................ 362
表 3-514. 函数 sdio_hardware_clock_disable ........................................................................................... 362
表 3-515. 函数 sdio_bus_mode_set............................................................................................................. 362
表 3-516. 函数 sdio_power_state_set ......................................................................................................... 363
表 3-517. 函数 sdio_power_state_get ......................................................................................................... 364
表 3-518. 函数 sdio_clock_enable ............................................................................................................... 364
表 3-519. 函数 sdio_clock_disable .............................................................................................................. 365
表 3-520. 函数 sdio_command_response_config ..................................................................................... 365
表 3-521. 函数 sdio_wait_type_set .............................................................................................................. 366
表 3-522. 函数 sdio_csm_enable ................................................................................................................. 367
GD32F10x 固件库使用指南
18
表 3-523. 函数 sdio_csm_disable ................................................................................................................ 367
表 3-524. 函数 sdio_command_index_get ................................................................................................. 367
表 3-525. 函数 sdio_response_get .............................................................................................................. 368
表 3-526. 函数 sdio_data_config .................................................................................................................. 369
表 3-527. 函数 sdio_data_transfer_config .................................................................................................. 370
表 3-528. 函数 sdio_dsm_enable ................................................................................................................. 371
表 3-529. 函数 sdio_dsm_disable ................................................................................................................ 371
表 3-530. 函数 sdio_data_write .................................................................................................................... 372
表 3-531. 函数 sdio_data_read ..................................................................................................................... 372
表 3-532. 函数 sdio_data_counter_get ....................................................................................................... 373
表 3-533. 函数 sdio_data_counter_get ....................................................................................................... 373
表 3-534. 函数 sdio_dma_enable ................................................................................................................. 374
表 3-535. 函数 sdio_dma_disable ................................................................................................................ 374
表 3-536. 函数 sdio_flag_get......................................................................................................................... 375
表 3-537. 函数 sdio_flag_clear ..................................................................................................................... 376
表 3-538. 函数 sdio_interrupt_enable ......................................................................................................... 377
表 3-539. 函数 sdio_interrupt_disable ........................................................................................................ 379
表 3-540. 函数 sdio_interrupt_flag_get ....................................................................................................... 380
表 3-541. 函数 sdio_interrupt_flag_clear .................................................................................................... 381
表 3-542. 函数 sdio_readwait_enable .......................................................................................................... 382
表 3-543. 函数 sdio_readwait_disable ........................................................................................................ 383
表 3-544. 函数 sdio_stop_readwait_enable ............................................................................................... 383
表 3-545. 函数 sdio_stop_readwait_disable .............................................................................................. 384
表 3-546. 函数 sdio_readwait_type_set ...................................................................................................... 384
表 3-547. 函数 sdio_operation_enable ........................................................................................................ 385
表 3-548. 函数 sdio_operation_disable ....................................................................................................... 385
表 3-549. 函数 sdio_suspend_enable ......................................................................................................... 386
表 3-550. 函数 sdio_suspend_disable ........................................................................................................ 386
表 3-551. 函数 sdio_ceata_command_enable ........................................................................................... 387
表 3-552. 函数 sdio_ceata_command_disable .......................................................................................... 387
表 3-553. 函数 sdio_ceata_interrupt_enable .............................................................................................. 388
表 3-554. 函数 sdio_ceata_interrupt_disable............................................................................................. 388
表 3-555. 函数 sdio_ceata_command_completion_enable ..................................................................... 389
表 3-556. 函数 sdio_ceata_command_completion_disable .................................................................... 389
表 3-557. SPI/I2S 寄存器 ................................................................................................................................. 390
表 3-558. SPI/I2S 库函数 ................................................................................................................................. 390
表 3-559. 结构体 spi_parameter_struct ....................................................................................................... 391
表 3-560. 函数 spi_i2s_deinit ........................................................................................................................ 391
表 3-561. 函数 spi_struct_para_init ............................................................................................................. 392
表 3-562. 函数 spi_init .................................................................................................................................... 393
表 3-563. 函数 spi_enable ............................................................................................................................. 394
表 3-564. 函数 spi_disable ............................................................................................................................ 394
表 3-565. 函数 i2s_init .................................................................................................................................... 395
表 3-566. 函数 i2s_psc_config ...................................................................................................................... 396
GD32F10x 固件库使用指南
19
表 3-567. 函数 i2s_enable .............................................................................................................................. 397
表 3-568. 函数 i2s_disable............................................................................................................................. 398
表 3-569. 函数 spi_nss_output_enable ....................................................................................................... 398
表 3-570. 函数 spi_nss_output_disable ...................................................................................................... 399
表 3-571. 函数 spi_nss_internal_high ......................................................................................................... 399
表 3-572. 函数 spi_nss_internal_low ........................................................................................................... 400
表 3-573. 函数 spi_dma_enable ................................................................................................................... 400
表 3-574. 函数 spi_dma_disable .................................................................................................................. 401
表 3-575. 函数 spi_i2s_data_frame_format_config .................................................................................. 401
表 3-576. 函数 spi_i2s_data_transmit ......................................................................................................... 402
表 3-577. 函数 spi_i2s_data_receive ........................................................................................................... 403
表 3-578. 函数 spi_bidirectional_transfer_config ..................................................................................... 403
表 3-579. 函数 spi_crc_polynomial_set ...................................................................................................... 404
表 3-580. 函数 spi_crc_polynomial_get ...................................................................................................... 404
表 3-581. 函数 spi_crc_on ............................................................................................................................. 405
表 3-582. 函数 spi_crc_off ............................................................................................................................. 405
表 3-583. 函数 spi_crc_next .......................................................................................................................... 406
表 3-584. 函数 spi_crc_get ............................................................................................................................ 406
表 3-585. 函数 spi_i2s_interrupt_enable .................................................................................................... 407
表 3-586. 函数 spi_i2s_interrupt_disable ................................................................................................... 408
表 3-587. 函数 spi_i2s_interrupt_flag_get .................................................................................................. 408
表 3-588. 函数 spi_i2s_flag_get ................................................................................................................... 409
表 3-589. 函数 spi_crc_error_clear .............................................................................................................. 410
表 3-590. TIMER 寄存器 .................................................................................................................................. 411
表 3-591. TIMER 库函数 .................................................................................................................................. 411
表 3-592. 结构体 timer_parameter_struct ................................................................................................... 414
表 3-593. 结构体 timer_break_parameter_struct ....................................................................................... 414
表 3-594. 结构体 timer_oc_parameter_struct ............................................................................................ 414
表 3-595. 结构体 timer_ic_parameter_struct.............................................................................................. 415
表 3-596. 函数 timer_deinit ........................................................................................................................... 415
表 3-597. 函数 timer_struct_para_init ......................................................................................................... 416
表 3-598. 函数 timer_init ................................................................................................................................ 416
表 3-599. 函数 timer_enable.......................................................................................................................... 417
表 3-600. 函数 timer_disable......................................................................................................................... 418
表 3-601. 函数 timer_auto_reload_shadow_enable .................................................................................. 418
表 3-602. 函数 timer_auto_reload_shadow_disable ................................................................................. 419
表 3-603. 函数 timer_update_event_enable ............................................................................................... 419
表 3-604. 函数 timer_update_event_disable .............................................................................................. 420
表 3-605. 函数 timer_counter_alignment .................................................................................................... 420
表 3-606. 函数 timer_counter_up_direction ............................................................................................... 421
表 3-607. 函数 timer_counter_down_direction .......................................................................................... 421
表 3-608. 函数 timer_prescaler_config ....................................................................................................... 422
表 3-609. 函数 timer_repetition_value_config ........................................................................................... 423
表 3-610. 函数 timer_autoreload_value_config ......................................................................................... 423
GD32F10x 固件库使用指南
20
表 3-611. 函数 timer_counter_value_config ............................................................................................... 424
表 3-612. 函数 timer_counter_read .............................................................................................................. 424
表 3-613. 函数 timer_prescaler_read ........................................................................................................... 425
表 3-614. 函数 timer_single_pulse_mode_config ..................................................................................... 425
表 3-615. 函数 timer_update_source_config ............................................................................................. 426
表 3-616. 函数 timer_dma_enable ................................................................................................................ 427
表 3-617. 函数 timer_dma_disable ............................................................................................................... 428
表 3-618. 函数 timer_channel_dma_request_source_select .................................................................. 428
表 3-619. 函数 timer_dma_transfer_config ................................................................................................ 429
表 3-620. 函数 timer_event_software_generate ........................................................................................ 431
表 3-621. 函数 timer_break_struct_para_init ............................................................................................. 432
表 3-622. 函数 timer_break_config .............................................................................................................. 432
表 3-623. 函数 timer_break_enable ............................................................................................................. 433
表 3-624. 函数 timer_break_disable ............................................................................................................ 434
表 3-625. 函数 timer_automatic_output_enable ........................................................................................ 434
表 3-626. 函数 timer_automatic_output_disable ....................................................................................... 435
表 3-627. 函数 timer_primary_output_config ............................................................................................ 435
表 3-628. 函数 timer_channel_control_shadow_config ........................................................................... 436
表 3-629. 函数 timer_channel_control_shadow_update_config ............................................................ 437
表 3-630. 函数 timer_channel_output_struct_para_init ........................................................................... 437
表 3-631. 函数 timer_channel_output_config ............................................................................................ 438
表 3-632. 函数 timer_channel_output_mode_config ................................................................................ 439
表 3-633. 函数 timer_channel_output_pulse_value_config .................................................................... 440
表 3-634. 函数 timer_channel_output_shadow_config ............................................................................ 441
表 3-635. 函数 timer_channel_output_fast_config ................................................................................... 442
表 3-636. 函数 timer_channel_output_clear_config ................................................................................. 442
表 3-637. 函数 timer_channel_output_polarity_config ............................................................................ 443
表 3-638. 函数 timer_channel_complementary_output_polarity_config .............................................. 444
表 3-639. 函数 timer_channel_output_state_config ................................................................................. 445
表 3-640. 函数 timer_channel_complementary_output_state_config ................................................... 446
表 3-641. 函数 timer_channel_input_struct_para_init ............................................................................. 446
表 3-642. 函数 timer_input_capture_config ............................................................................................... 447
表 3-643. 函数 timer_channel_input_capture_prescaler_config ............................................................ 448
表 3-644. 函数 timer_channel_capture_value_register_read.................................................................. 449
表 3-645. 函数 timer_input_pwm_capture_config .................................................................................... 450
表 3-646. 函数 timer_hall_mode_config ..................................................................................................... 451
表 3-647. 函数 timer_input_trigger_source_select ................................................................................... 451
表 3-648. 函数 timer_master_output_trigger_source_select .................................................................. 452
表 3-649. 函数 timer_slave_mode_select ................................................................................................... 453
表 3-650. 函数 timer_master_slave_mode_config .................................................................................... 454
表 3-651. 函数 timer_external_trigger_config ........................................................................................... 455
表 3-652. 函数 timer_quadrature_decoder_mode_config ....................................................................... 456
表 3-653. 函数 timer_internal_clock_config ............................................................................................... 457
表 3-654. 函数 timer_internal_trigger_as_external_clock_config .......................................................... 457
剩余501页未读,继续阅读
216 浏览量
353 浏览量
1391 浏览量
507 浏览量
286 浏览量
2021-09-30 上传
167 浏览量
630 浏览量
151 浏览量
zhang15236070887
- 粉丝: 6
- 资源: 43
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 简介
- ArcGIS_Engine_C#实例开发教程+源码(超值)
- 矩阵理论全套课件PPT (北航、北理、清华、北邮).rar
- project-1 2.0
- RobusTest-crx插件
- 1个
- ML_Projects
- TCP服务器完整源码(基于IOCP实现) v1.4-易语言
- Prolific USB-to-Serial Comm Port
- Delphi7-SQLMemTable 多线程修改内存表 例子.rar
- 二维码识别工具.zip
- Stashio [URL Saver]-crx插件
- rest_pistache
- TIC
- docusaurus-netlifycms:docusaurs和Netlify CMS的简单实现
- Trainual-crx插件
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功