找回密码
 注册
关于网站域名变更的通知
查看: 381|回复: 4
打印 上一主题 下一主题

大神请指点:单片机uart和spi同时使用的问题

[复制链接]
  • TA的每日心情
    开心
    2023-5-15 15:25
  • 签到天数: 1 天

    [LV.1]初来乍到

    跳转到指定楼层
    1#
    发表于 2020-7-7 09:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

    EDA365欢迎您登录!

    您需要 登录 才可以下载或查看,没有帐号?注册

    x
    rc522的spi初始化 (使用的是定时计数器T1)
    9 A/ {- W4 |6 @    TMOD = 0x21;                // T1设置为8位自动重装载定时器                        
    3 K& ^  Y# e. K; Q8 h( R0 M- r! u: m    SCON = 0x50;                // 串口工作在模式1:8位UART波特率可变,且禁止接收(0x40)7 m1 K/ |2 `% V# j4 v( x
        TH1 = 0xE8;                        // 单片机小精灵V1.3算出的2400波特率且波特率  11.0592MHZ" A+ i! B2 S, g) z4 Q0 G5 P
        TL1 = TH1;                        // 加倍时的定时器设置值。
    6 ]8 W. i! u; J* A9 L7 K    PCON = 0x80;                // 设置为波特率加倍
    ' F5 j9 b- [7 \) c    EA = 1;                                // 开总中断  Q* p+ A1 s2 P$ T  U
        //ES = 1;                            // 开串口中断
    ( X! `! c* ~2 O0 _4 `# R1 c. Y   TR1 = 1;                    // 定时器1开启计数
    - i& P) \* \# U% }3 Zrc522的程序已经调试好了,as608指纹模块的程序也调试好了,但是两个合并起来就出问题。7 g6 k4 L2 ~/ L
    在rc522的程序上添加as608的初始化(使用的是定时计数器T2)( P, p" \& m$ L" }4 Q4 z
        //SCON=0x50;   //UART方式1:8位UART;   REN=1:允许接收
    ' e" M& h+ w: t- _) R/ }) ~    T2CON=0x30;   //SMOD=0:波特率不加倍  + L& n/ @8 \7 U( q' U. }
        TH2=0xFF;
    & T2 B( s* r9 t' v    TL2=0xDC;        
    ; x  H: _: X* g! e* e    RCAP2H=TH2;
    8 Q# S3 f! {) ?' D1 Z) c    RCAP2L=TL2;' U8 r( P& I! ~+ Y/ X
        //  EA=1;
    ' p1 w! K% D' I8 M+ s2 r  ]# a    TR2=1;7 q) d+ Y1 T. Q+ m% }
    添进去rc522的串口就不正常了,读取的内容就不对,本来是四位,现在只读出来一位,内容还不对。: N6 |8 `% X  s. c
    感觉是这两个初始化会冲突,各位帮看看吧。

    该用户从未签到

    2#
    发表于 2020-7-7 10:16 | 只看该作者

    7 u3 n+ g+ n' T) n1 |$ E8 ySPI uart 都是串行慢速通讯,尽量用中断或DMA来接收数据,注意不要在中断中处理接收数据,放在缓冲区中,空闲时处理解析。
  • TA的每日心情
    开心
    2023-5-15 15:14
  • 签到天数: 1 天

    [LV.1]初来乍到

    3#
    发表于 2020-7-7 10:22 | 只看该作者
    都需要用DMA
    8 R9 z& o! Y9 o* [, s/ _

    点评

    能不能不用DMA  详情 回复 发表于 2020-7-7 13:17
  • TA的每日心情
    开心
    2023-5-15 15:25
  • 签到天数: 1 天

    [LV.1]初来乍到

    4#
     楼主| 发表于 2020-7-7 13:17 | 只看该作者
    Heaven_1 发表于 2020-7-7 10:22) R# b! ]3 O1 a2 c& C: @, l
    都需要用DMA

    % ~, @2 E: Y/ y! w/ k8 F能不能不用DMA

    点评

    应该还是程序哪里有问题,把中断关了试试  详情 回复 发表于 2020-7-12 21:03

    该用户从未签到

    5#
    发表于 2020-7-12 21:03 | 只看该作者
    ad_gao 发表于 2020-7-7 13:17
    ' e& `# ~' u3 T能不能不用DMA

    4 @6 d9 U( H& P& r9 Z- J应该还是程序哪里有问题,把中断关了试试
    5 _! s( b# K2 n
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-6-24 18:33 , Processed in 0.078125 second(s), 24 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

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