找回密码
 立即注册
查看: 110|回复: 1

请教各位大侠,有没有试过,SPI和UART2一起使用DMA?

[复制链接]
  • 打卡等级:常住居民III
  • 打卡总天数:153
  • 最近打卡:2026-03-30 19:54:03
已绑定手机

22

主题

2426

回帖

3422

积分

论坛元老

积分
3422
发表于 2026-2-4 16:28:22 | 显示全部楼层 |阅读模式
这几天忽然想看看,我们STC的Ai8051U试验箱,能够用SPI+DMA方式驱动OLED屏,


也可以用UART2+DMA方式在单片机和PC机之间使用串口助手高速传输数据

那么能否整合上面的2个任务呢?

这几天我尝试了一下,遇到个问题:

调试好7脚OLED屏幕用SPI+DMA显示后,把普通UART2 通信部分加入,OLED和PC串口助手都可以顺利执行,但是一加入UART的DMA初始化

整个系统好像就崩溃了,OLED没有显示,串口不受控制的接收到部分乱码。。。。。。。。。。。

我把项目打包发上来,大家帮忙看看哪里没有写对?

现在的状态是主函数:


        config();
        usb_init();                                     //USB-CDC 接口配置
    Timer0_Init();                //1毫秒@40.000MHz
        Uart2_Init();        //9600bps@40.000MHz
        //DMA_Config();
        Initialize_OLED();
        P3_IO_Init();   //P3端口用作中断初始化(P32P33P35用图OLED的SPI)
        ES2 = 1;                // 使能串口2中断
        EA = 1;



一把DMA_Config();放出来,就不行啦!

OLED UART2 DMA实验.zip

22 Bytes, 下载次数: 1

回复

使用道具 举报 送花

  • 打卡等级:以坛为家III
  • 打卡总天数:651
  • 最近打卡:2026-03-31 10:58:01
已绑定手机

52

主题

2527

回帖

8888

积分

论坛元老

积分
8888
发表于 2026-2-5 11:19:09 | 显示全部楼层
附件例程包只有22字节,打开压缩包后是空的。
回复

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2026-4-1 06:14 , Processed in 0.098789 second(s), 50 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表