GD32L233C-START 开发板 学习笔记(四)
[复制链接]
GD32L233C-START 开发板 学习笔记(四)
GD32L23C-START 开发板 Demo例程
打开GD的例程,有没有满满的熟悉感。
int main(void)
{
systick_config(); //配置系统时钟,系统中断指针
/* enable the LED GPIO clock */
rcu_periph_clock_enable(RCU_GPIOA); //配置A端口时钟
rcu_periph_clock_enable(RCU_GPIOC); //配置C端口时钟
/* configure LED GPIO pin */
gpio_mode_set(GPIOA, GPIO_MODE_OUTPUT, GPIO_PUPD_NONE, GPIO_PIN_7 | GPIO_PIN_8); //配置A端口的引脚7、8为引脚输出模式,初始状态为悬空,无上拉和下拉
gpio_output_options_set(GPIOA, GPIO_OTYPE_PP, GPIO_OSPEED_50MHZ, GPIO_PIN_7 | GPIO_PIN_8); //配置A端口的引脚7、8推挽输出模式,最大输出速度为50MHz
gpio_mode_set(GPIOC, GPIO_MODE_OUTPUT, GPIO_PUPD_NONE, GPIO_PIN_6 | GPIO_PIN_7);
gpio_output_options_set(GPIOC, GPIO_OTYPE_PP, GPIO_OSPEED_50MHZ, GPIO_PIN_6 | GPIO_PIN_7);
/* reset LED GPIO pin */
gpio_bit_reset(GPIOA, GPIO_PIN_7 | GPIO_PIN_8); //重新装填引脚配置并复位
gpio_bit_reset(GPIOC, GPIO_PIN_6 | GPIO_PIN_7);
while(1) {
/* turn on LED1, turn off LED4 */
gpio_bit_set(GPIOA, GPIO_PIN_7);
gpio_bit_reset(GPIOC, GPIO_PIN_7);
delay_1ms(500);
/* turn on LED2, turn off LED1 */
gpio_bit_set(GPIOA, GPIO_PIN_8);
gpio_bit_reset(GPIOA, GPIO_PIN_7);
delay_1ms(500);
/* turn on LED3, turn off LED2 */
gpio_bit_set(GPIOC, GPIO_PIN_6);
gpio_bit_reset(GPIOA, GPIO_PIN_8);
delay_1ms(500);
/* turn on LED4, turn off LED3 */
gpio_bit_set(GPIOC, GPIO_PIN_7);
gpio_bit_reset(GPIOC, GPIO_PIN_6);
delay_1ms(500);
}
}
/*!
\brief configure systick
\param[in] none
\param[out] none
\retval none
*/
void systick_config(void)
{
/* setup systick timer for 1000Hz interrupts */
if(SysTick_Config(SystemCoreClock / 1000U)) {
/* capture error */
while(1) {
}
}
/* configure the systick handler priority */
NVIC_SetPriority(SysTick_IRQn, 0x00U);
}
完全可以根据厂家提供《GD32L23x_shiyongzhinan_Rev1.0》文档,快速将前期所使用的工程重新部署到GD32L23x芯片系统上,点赞。
|