本帖最后由 eltonchang2001 于 2022-11-9 11:34 编辑
首先感谢21ic和合泰举办的这个活动《【开发板免费送】合泰半导体 Starter Kit尝鲜体验》;很荣幸得到了这次活动的中奖名额,开发板到了有一星期了,很抱歉这么晚才发,实在是太忙(lan)了。 好了闲话少说,还是开启这次主题任务。
本次的主角是HT32 ESK32-30501开发板,CPU型号是合泰的HT32F52353,内核时Cortex-M0+,工作频率48MHz,具有128KB Flash, 16KB的SRAM,Timer/IIC/SPI/UART/ADC/USB等常用接口都有。更为可贵的是板载合泰开发的e-Link PRO 下载器,可以直接通过USB口下载程序,也可以把下载器分离出来,给其他Cortex-M芯片下载程序。说了这么多,我们还是先欣赏下开发板吧。
接下来就是搭环境了,打开合泰的官网(https://www.holtek.com.tw/esk32-30501) , 从这里下载下来所有文件和软件。需要注意的是keil 的pack是在固件库文件中的。
开始进行DEMO测试,打开“【合泰】Starter Kit开发板\01_Data\Soft\HT32_STD_5xxxx_FWLib_V1.0.24_5762\example”目录,下面有很多示例,先测试LED,打开GPIO/Output,双击_CreateProject.bat文件
选择Keil MDK-ARM v5和 IC 为52352,然后按任意按键,就可以生成工程。然后打开原理图,可以看见LED1-PC14, LED2-PC15, 然后打开工程修改程序,我们设计程序为,LED1每隔500ms亮灭一次。
打开工程,修改代码如下:
/* Global functions ----------------------------------------------------------------------------------------*/
/*********************************************************************************************************//**
* [url=home.php?mod=space&uid=247401]@brief[/url] Main program.
* @retval None
***********************************************************************************************************/
int main(void)
{
GPIO_Configuration();
while (1)
{
GPIO_OutputBit();
// GPIO_OutputData();
}
}
/*********************************************************************************************************//**
* [url=home.php?mod=space&uid=247401]@brief[/url] Configure the GPIO as output mode.
* @retval None
***********************************************************************************************************/
void GPIO_Configuration(void)
{
{ /* Enable peripheral clock */
CKCU_PeripClockConfig_TypeDef CKCUClock = {{ 0 }};
CKCUClock.Bit.AFIO = 1;
CKCUClock.Bit.PC = 1;
CKCU_PeripClockConfig(CKCUClock, ENABLE);
}
{ /* Configure GPIO as output mode */
/* Configure AFIO mode as GPIO */
AFIO_GPxConfig(GPIO_PC, AFIO_PIN_14, AFIO_FUN_GPIO);
/* Configure GPIO pull resistor */
GPIO_PullResistorConfig(HT_GPIOC, GPIO_PIN_14, GPIO_PR_DOWN);
/* Default value RESET/SET */
GPIO_WriteOutBits(HT_GPIOC, GPIO_PIN_14, RESET);
/* Configure GPIO direction as output */
GPIO_DirectionConfig(HT_GPIOC, GPIO_PIN_14, GPIO_DIR_OUT);
}
}
/*********************************************************************************************************//**
* [url=home.php?mod=space&uid=247401]@brief[/url] GPIO Output bit test
* @retval None
***********************************************************************************************************/
void GPIO_OutputBit(void)
{
GPIO_SetOutBits(HT_GPIOC, GPIO_PIN_14); // GPIO = HIGH
__Delay(5000000);
GPIO_ClearOutBits(HT_GPIOC, GPIO_PIN_14); // GPIO = LOW
__Delay(5000000);
}
下载设置如下:
下载完成后,可以看见LED灯开始闪烁了。
这个开发板测试还是比较顺利,合泰的资料也很丰富,不过有个问题,有的.c文件没有加到工程中,但是goto define的时候也可以跳转和编译,很是疑惑,另外
自己创建工程,尝试了下,没有成功,会报很多错误,还在测试中,好了,目前的测试就到这里,后续有进展了再补充。
最后再次感谢21ic和合泰的活动 。
|