发新帖本帖赏金 100.00元(功能说明)我要提问
返回列表
打印
[LKS32 硬件]

LKS32MC081评测+片内DAC生成正弦波

[复制链接]
2247|9
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 mxkw0514 于 2022-6-27 10:09 编辑

       前几天收到凌鸥的开发板了包括LKS32MC081 MCU核心板和功率板(如图1-1所示),这次的开发板主要是面向电机应用,但是我首先不用它来测评电机相关的小应用,我想试一试片内DAC,很多单片机都有ADC模块,但是很少有DAC模块的,正好借着这个机会使用LKS32MC081单片机的片内DAC生成正弦波。


图1-1 LKS32MC081 MCU板和功率板实物图


      核心板LKS32MC081非常简洁,上面没有外部晶振,也没有复位按键(不过外留了焊盘),功率板布局十分紧凑,大电流的地方加厚了锡。但是我在使用杜邦线的时候,核心板上的杜邦线触碰到了半桥驱动器的LKS560的HO引脚(如图1-2所示),该引脚是低电平,后来就下不进程序了,应该是把芯片烧了),我太粗心了。没有办法,只能买上LKS32MC081C8T8将核心板上的坏了的芯片替换掉,开始是想在某宝上买来的,可能这个芯片不太常用,很少,还卖的特别贵,考虑再三,就在某创商城买了几片。话说核心板上有短路保护的呀(如图1-3所示),为什么会这样呢,还请指教。

图1-2功率板的半桥驱动器

图1-3 短路保护电路


图1-4 重新购买了样片

图1-5 芯片替换焊接


        LKS32MC081单片机有一个12位的片内DAC,但是数据手册中只有一段简略的介绍(如图1-6所示),其实我是很想看一看片内DAC的结构框图和功能框图(虽然这段介绍已经很具体了),官方给了一个DAC模块的例程,我在这个例程中进行了修改。

       首先我用波形绘制工具UltraWave软件(如图1-7所示)绘制一个正弦波,并将该波形文件导出(是一个数组),并添加到官方DAC例程中。DAC输出引脚固定位P0.0,使用SYS_AFE_DAC寄存器依次输出正弦波数组中的值(这里需要设置号最大值,包括1.2V、3V和4.85V三个选项),这里选择的是4.85V,整个程序如下所示。程序中的数组为一个波形的容量,点数越多,波形的平滑效果越好,如果点数太少,则很容易看到一个阶梯状的效果。



图1-6 DAC模块介绍。



图1-7 UltraWave软件界面

int main(void)
{
        Hardware_init(); /* 硬件初始化 */

        
        while (1)
        {
                unsigned char  sin_tab[]={
   125,128,131,134,138,141,144,147,150,153,156,159,162,165,168,171,
   174,177,180,182,185,188,191,193,196,198,201,203,206,208,211,213,
   215,217,219,221,223,225,227,229,231,232,234,235,237,238,239,241,
   242,243,244,245,246,246,247,248,248,249,249,250,250,250,250,250,
   250,250,250,249,249,248,248,247,246,246,245,244,243,242,241,239,
   238,237,235,234,232,231,229,227,225,223,221,219,217,215,213,211,
   208,206,203,201,198,196,193,191,188,185,182,180,177,174,171,168,
   165,162,159,156,153,150,147,144,141,138,134,131,128,125,122,119,
   116,112,109,106,103,100, 97, 94, 91, 88, 85, 82, 79, 76, 73, 70,
   68,  65, 62, 59, 57, 54, 52, 49, 47, 44, 42, 39, 37, 35, 33, 31,
   29,  27, 25, 27, 29, 27, 25, 23, 21, 19, 18, 16, 15, 13, 12, 11,
   9,    8,  7,  6,  5,  4,  4,  3,  2,  2,  1,  1,  0,  0,  0,  0,
   0,    0,  0,  0,  1,  1,  2,  2,  3,  4,  4,  5,  6,  7,  8,  9,
   11,  12, 13, 15, 16, 18, 19, 21, 23, 25, 27, 29, 31, 33, 35, 37,
   39,  42, 44, 47, 49, 52, 54, 57, 59, 62, 65, 68, 70, 73, 76, 79,
   82,  85, 88, 97, 94, 97,100,103, 106,109,112,116,119,122};
   unsigned int ms;
   while (1)
    {
       for(ms=0;ms<254;ms++)
       {
           SYS_AFE_DAC=(sin_tab[ms]*4096)/256;
                                  // delay(100);
        }           
    }

                delay(0x10000);
        }
}
      将程序在keil软件中编译无误后下载到 LKS32MC081C8T8中,使用USB虚拟示波器(如图1-8所示)观察到P0.0引脚的波形,电脑屏幕上的正弦波波形如图1-9所示,波形平滑效果很好,没有明显的失真。这次测评把芯片烧了是着实大意了,重新买了芯片,在某创商城买时10多元,尚未找到更便宜的了,这款芯片的特色还是面向于电机应用,后面再接着对其进行小测评。

图1-8 虚拟示波器

图1-9 正弦波波形图

使用特权

评论回复

打赏榜单

21小跑堂 打赏了 100.00 元 2022-12-06
理由:恭喜通过原创审核

沙发
爱装大神的小白| | 2022-12-5 10:39 | 只看该作者
生成正弦波的话可以使用芯片内的dsp来做,输入-32768----32767对应-180-180

使用特权

评论回复
板凳
xu@xupt| | 2022-12-7 16:23 | 只看该作者
学习啦

使用特权

评论回复
地板
yangxiaor520| | 2022-12-12 19:49 | 只看该作者
波形比较标准。

使用特权

评论回复
5
HTChen9411| | 2022-12-13 12:35 | 只看该作者
学习

使用特权

评论回复
6
4agr| | 2022-12-14 20:16 | 只看该作者
学习了

使用特权

评论回复
7
xu@xupt| | 2022-12-18 00:14 | 只看该作者
感谢分享,学习啦

使用特权

评论回复
8
豌豆爹| | 2023-1-5 14:47 | 只看该作者
楼主优秀,好好学习

使用特权

评论回复
9
weifeng90| | 2023-1-16 21:50 | 只看该作者
从波形来看,生成的数据比较平滑。

使用特权

评论回复
10
forgot| | 2023-1-17 11:36 | 只看该作者
楼主优秀啊,来学习一下,感谢分享~~~~~~

使用特权

评论回复
发新帖 本帖赏金 100.00元(功能说明)我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

32

主题

572

帖子

5

粉丝