首页 > 评测 > 重温飞思卡尔——YL-KL26Z开发板评测

重温飞思卡尔——YL-KL26Z开发板评测

飞思卡尔   YL-KL26Z   nxp      
  • 作者:夜色风满楼
  • 来源:21ic
  • [导读]
  • YL-KL26Z-V2 开发板采用飞思卡尔 Kinetis L 系列的 KL26Z128V4 (ARM Cortex-M0+内核,主频 48MHZ)做为主控芯片。

9.jpg

也许有的朋友习惯了自己编写代码,生成目标文件,再进行下载,而不是直接使用别人制作好的bin文件。那么我们还需要安装调试串口和仿真器的驱动。打开光盘目录下的实用工具,再单击驱动文件,双击安装mbedWinSerial_16466文件,选择Install。

10.jpg

安装结束会出现提示,选择Finish即可。

11.jpg

此时,在设备管理器下又多了两个设备,一个是调试串口Com33,一个是仿真器Mbed Composite Device,至此驱动安装完毕,开发板可以正常使用了。

12.jpg

此时打开光盘中的Keil例程,就可以直接下载程序,也就是说用户可以自己编写程序进行测试了。

首先找到测试的官方例程,可以去网上下载,也可以直接使用光盘中的例程。但要注意下图的路径。

13.jpg

打开工程后,在工程配置下的Debug菜单下选择CMSIS-DAP Debugger仿真器,再进入Utilities,同样选择CMSIS-DAP Debugger仿真器,然后选择“Setting”,添加片上Flash烧写算法,默认已经添加好了的,如果没有,选择Add,在列表中找到Mcu的片上Flash型号即可。

14.jpg

笔者选择ADC模块作为测试对象,具体做法是由AD模块测量输入的电压值并通过串口打印到PC机。同时在外部通过调节滑动变阻器改变电压值,故会在PC上看到单片机输出的数值变化。

测试结果如下:可以看出,AD值的由最大变为最小,这是因为笔者只顺时针方向调节滑动变阻器的旋钮,电阻值由大到小,故电压值由大到小。

15.jpg

总结一下,YL-KL26Z-V2开发板共有两种写入程序的方法。

一是板级支持包U盘烧写方法,将目标代码直接拷入开发板模拟的U盘中,开发板会自动完成烧写,对开发板进行复位,程序便可执行。

二是通过仿真器下载代码,这也是我们最常用的方式。使用CMSIS-DAP Debugger仿真器(开发板自带,Mini-Usb线缆也自带,用户只要正确安装驱动即可)。

2、正弦波、锯齿波、三角波的输出测试

在一般的情况下,我们最常用的波形有4种,即方波(PWM波)、正弦波、锯齿波和三角波。方波自不必多说,它可通过Mcu内部自带的定时器可轻松实现各种频率、占空比可调的方波。而剩下的三种,没有专用的模块生成,一般是通过模拟电路产生或者使用DAC模块来模拟。YL-KL26Z-V2拥有一个12位的DAC ,可以非常方便的供我们产生这几种波形。

波形产生的思路是比较简单的,众所周知这几种波形都是周期信号,所以我们只要可以输出一个完成周期的波形,再通过连续的调用就可以输出我们想要的任何波形了。由于DAC是12位的,故数字量的范围为0~0xFFF。同时,我用33个数据点来描述一个周期(当然用更多或者更少也是可以的,从理论上讲,点数越多越平滑,点数越少越粗糙),即将0~0xFFF中的某些值,按某些规律放在一个大小为33的数组中,反复调用数组即可。按照分配规律的不同,输出的波形也是不同的。

对于正弦波而言,最好的分配规律是按正弦规律分配:

{2047,2446,2830,3184,3494,3749,3938,4055,4094,4055,3938,3749,3494,3184,2830,2446,2047,1648,1264,910,600,345,156,39,0,39,156,345,600,910,1264,1648,2047,0xFFF};

输出波形结果如下:

16.jpg

可以看出,这种方式输出的正弦波较为平滑,比较令人满意。但肉眼仍可观察到不平滑处,仍有较大的改进余地。比如可通过外接高位数的DA,增加点数等等方法。

对于三角波,我采用平均分配的方法:

{0,0xFF,0x1FE,0x2FD,0x3FC,0x4FB,0x5FA,0x6F9,0x7F8,0x8F7,0x9F6,0xAF5,0xBF4, 0xCF3,0xDF2,0xEF1,0xFF0,0xEF1,0xDF2,0xCF3,0xBF4,0xAF5,0x9F6,0x8F7,0x7F8,0x6F9,0x5FA,0x4FB,0x3FC,0x2FD,0x1FE,0xFF,0};

输出波形结果如下:

17.jpg

对于锯齿波,相当于半个三角波:

{0,0x7F,0xFF,0x17E,0x1FE,0x27D,0x2FD,0x37C,0x3FC,0x47B,0x4FB,0x57A,0x5FA,0x679,0x6F9,0x778,0x7F8,0x877,0x8F7,0x976,0x9F6,0xA75,0xAF5,0xB74,0xBF4,0xC73,0xCF3,0xD72,0xDF2,0xE71,0xEF1,0xE70,0xFF0};

输出波形结果如下:

18.jpg

需要注意的是,本评测文章只是简单测试了板卡的DAC功能,并未详细讨论波形生成的算法。在实际的波形生产中,因为需要考虑波形的频率、斜率等因素,所以需要一个函数去动态计算数组中应放的数据。即不是使用固定的数组,而是使用一个编写的函数去计算输出值,然后再输出,如果读者有兴趣的话,可以自行研究。

  • 本文系21ic原创,未经许可禁止转载!

网友评论