【APT32F173测评】抢先体验!APT32F173开发板
那是个落日余晖似乎也懒洋洋的傍晚,我正坐在书桌前,翻阅着些许发黄的书页,寻觅着文中的智慧和历史的印迹。忽然,门外有几下轻微而急促的敲门声,打断了我的沉思。 我起身开门,只见一个邮差站在门外,手里提着一个包裹。他对我点了点头,交到我的手上,便急匆匆地离去了。重重的包裹,被精心包装过,看不出里面是什么。我心中不免生出一丝好奇,这突如其来的神秘礼物,莫非是哪位故人遥寄的问候? 我将包裹带回屋内,拆掉外面的包装纸。层层剥开,露出来...........爱普特微电子 了解一下抢先体验!APT32F173开发板
本文内容主要分为以下部分,各位读者看官可根据需要快速翻阅和查看~
一、开箱-APT32F173开发板
二、搭建开发环境-剑池CDK
三、例程测试
四、更多功能的实现
更多·····待续
一、开箱-APT32F173开发板
拆开快递包装,一个四四方方且厚实的纸盒便展露眼前
通过纸盒外在标识,不难猜到里头应有一个仿真器和一个173开发板(如果没有,我可要致电12315了,开个玩笑~)
打开纸盒可以看到开发板被保护得很好,不仅有静电袋还有缓冲泡沫。嗯,十分稳妥,可以全国各地飞了~
再来个大合照
未完~待续~
本应早早写完的测评,奈何电脑不争气。开发板刚到手的第三天,一觉睡醒发现电脑一声不吭,仍凭拳打脚踢毫无反应,无奈高价请电脑界在世华佗出手相助,写这段话时,主板还在送修途中~
本帖最后由 卑鄙的小黄人 于 2024-1-19 11:40 编辑
书接上回~我的主板仍是未归家的游子,只能临时找台电脑来顶个班。
二、搭建开发平台
APT32F173的开发平台我使用的是剑池CDK。
第一步搜索玄铁官网或者点击时空门隧道
第二步,在 技术支持 的下拉菜单中选择 资源下载
第三步,点击开发工具,找到剑池CDK
(一个剑池CDK的版本说明,一个是剑池CDK的压缩包)
第四步,登录下载, 解压打开,然后直接双击安装(用手机号注册即可,安装路径最好为全英文)
安装过程中可能会出现弹窗,一路“yes”就行了
直到出现“finish”,安装完成。
第五步,打开cdk,下载SDK,找到APT32F173x示例程序,直接下载V1.2.1
(我们可以先点击“Update Remote Repo”刷新一下)
至此,APT32F173开发板的开发环境就搭建好了!
未完待续~
续上~
趁着周末找台电脑顶班...
三、例程测试
安装好DEMO V1.2.1,接下来就可以新建工程进行愉快地玩耍了。
第一次需要先新建一个工作区,再新建project。如下图,你可以自由定义工作区的名字和存储位置。
点击OK,进入到这个页面,我们只需根据提示依次选中这几个选项就可以打开基于APT32F173x开发板的工程示例了
打开查看,可以看到main函数只有初始化和打印 Hello World~~~~~~~
接下来,让我们开始愉快地玩耍吧~
使用数据线连接开发板,保持默认设置,点击编译,下载。(此处,我们需要使用TTL工具自行连接开发板的串口,用于接收Hello World~~~~~~~)
接下来,你可能看不到串口有输出,不论你如何拔插数据线....
我不确定是否是TTL工具的问题(我用的是cp2102),只接了RX\TX\GND三条线,TTL工具竟然可以使MCU上电启动....
拔掉数据线,可以看开发板有微弱红光
如果你不接数据线,拔插TTL工具,你将神奇发现,串口向你发送了Hello World~~~~~~~
为了简单地观察,你可以在while循环中添加上
my_printf("Hello World~~~~~~~\n"); //打印信息
这样你就能看到源源不断的串口输出了~
Demo V1.2.1中还有许多简单易用示例代码,如:GPIO相关示例代码、BT相关的示例代码、SYSCON相关的示例代码、SPI相关的示例代码、flash相关的示例代码ADC相关的示例代码、UART相关的示例代码等等,让我们接着往下看~
本帖最后由 卑鄙的小黄人 于 2024-1-21 16:29 编辑
四、更多功能的实现
为了快速入门,我们离不开手册帮助,这里推荐大家可以先行到官网下载APT32F173的相关手册,也可以直接点击时空传送门。
1、ADC测试
APT32F173具有以下特性:
带逐次逼近逻辑的模拟比较器 自带固定电压参考源(INTVREF)
支持多路外部模拟输入AIN,BIN,内部固定电压参考源输入,以及1/5VDD输入
支持多序列转换模式,可灵活配置转换通道,转换顺序,转换次数
每个转换序列都有一个20位转换结果寄存器(ADC_DR)
支持多个外部触发源,可以触发转换序列
最大转换速度: 3MSPS
模拟输入范围:AVSS 到 AVREF
Demo V1.2.1中,我们可以在user_demo找到ADC接口函数。
可以看到这里有四个ADC的函数接口
右击查看,打开adc_demo.c文件,可以看到这四个ADC函数
这里使用ADC引脚分别是PC13_ADC_INA0、PC14_ADC_INA0、PC15_ADC_INA0,分别对应开发板PC13、PC14、PC15引脚。
相关引脚定义你可以通过查看数据手册或者右击查看引脚定义都能看到。
注意要接PC13、PC14、PC15,而不是示例程序写的PC13、PA14、PA15
(这里估计是示例程序写错了,不用管,不影响使用。若有误会,请联系我更正。)
接下来,我们随意选择一个,直接调用它,进行ADC测试
不出意外的话 ,就要出意外。你会得到一个 warning
查看警告内容,是的,你还声明一下~
我们简单添加个声明
extern void adc_samp_continuous_demo(void);
OK,连接串口,你将看到类似的输出:
(值得注意的是,串口输出的数值是一个12位的数字值,实际使用你可能需要对它进行简单的换算)
感谢浏览,未完待续~
本帖最后由 卑鄙的小黄人 于 2024-1-27 19:07 编辑
趁着周末有电脑借,更新一下~~
2、Timer测试
通过翻看APT32F173系列使用手册可知APT32F173有一个16位基本型计数器(Basic Timer),Timer工作在递增模式下,支持自动重载功能,可提供基础定时/计数功能和简单的PWM波形输出,接下来让我们简单测试下TIMER定时功能,利用TIMER设置1S定时,自动用串口发送“卑鄙的小黄人”。
下面进入正题 (不得不说,使用手册和demo例程做得很细致~)
首先,打开bt_demo.c文件,可以看到这里已经有配置好的函数等待我们的调用
根据任务要求,这里我们只需要用到ATTRIBUTE_ISRvoid bt1_int_handler(void)和int bt_timer_demo(void)这两个函数,然后对它们进行小小的改动便能满足任务要求,实现预期目标。
完成这些改动后,别忘了添加声明,不然你会得到个警告。
接下来回到main.c文件,声明函数bt_timer_demo(),且在main函数中调用它。
查看Usart输出
Very Easy~ 一个简单的Timer测试就完成了!
页:
[1]