天灵灵地灵灵 发表于 2022-12-22 19:31

MUG51 通过DMA实现SPI的数据接收

/*---------------------------------------------------------------------------------------------------------*/
/*                                                                                                         */
/* SPDX-License-Identifier: Apache-2.0                                                                     */
/* Copyright(c) 2022 Nuvoton Technology Corp. All rights reserved.                                       */
/*                                                                                                         */
/*---------------------------------------------------------------------------------------------------------*/

#include "MUG51.h"

/**
* @brief       I2C0 master demo.
* @param       None
* @return      None
* @Details   please confirm enable LXT and check work stable if use LXT as WKT clock source.
*/

unsigned char xdata RxDatabuffer;
unsigned char loopcount=100;

void PDMA0_ISR(void) interrupt 20          // Vector @0xA3
{
    clr_DMA0TSR_FDONE;
}

void main (void)
{

    MFP_P13_GPIO;
    P13_PUSHPULL_MODE;

    MFP_P00_SPI0_MOSI;
    P00_QUASI_MODE;
    MFP_P01_SPI0_MISO;
    P01_QUASI_MODE;
    MFP_P02_SPI0_CLK;
    P02_QUASI_MODE;

    SPI_Open(SPI0,SPI_SLAVE,10,SPI_MODE_3,MSB_FIRST);
    PDMA_Open(PDMA0,SPI0RX,0x00,100);
    PDMA_Interrupt_Enable(PDMA0,PDMAFULLINT);
    ENABLE_GLOBAL_INTERRUPT;
    PDMA_Run(PDMA0);

    while(1);
}





huahuagg 发表于 2022-12-22 20:55

发现51内核的单片机都比较好用,没那么多要配置的。

huangcunxiake 发表于 2022-12-25 18:09

有点看不太明白,怎么让DMA接收到那个地址

LOVEEVER 发表于 2022-12-27 16:40

huahuagg 发表于 2022-12-22 20:55
发现51内核的单片机都比较好用,没那么多要配置的。

毕竟51的功能只是满足基本的还是32位的无论速度还是通信方式都比较多种多样,适用场合比较多

wahahaheihei 发表于 2022-12-29 11:01

SPI通常比I2C好用一些。

星辰大海不退缩 发表于 2022-12-29 13:05

51内核单片机的指令系统内部结构简单,基本是入门级的
页: [1]
查看完整版本: MUG51 通过DMA实现SPI的数据接收