打印

MPC82G516 SPI接口问题 求教

[复制链接]
3046|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
yuki774|  楼主 | 2011-9-1 09:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
硬件情况:1、AT51单片机与MPC单片机通过SPI接**换数据,两者均使
                  用 11.0592晶振。
              2、AT51单片机为固定从机,MPC为固定主机。
              3、两者只通过MISO、MOSI、CLK三根线相连。
              4、两者的/SS线均作为普通I/O口使用。
              5、已确定AT51单片机能正常工作,问题只存在于MPC单片机方面。
MPC软件设置情况:
             1、使能SPI,设置为主机,忽略/SS引脚,时钟相位选择为‘1’,
                 SPI时钟速率为16分频,不使能中断。

存在问题:
            1、当发送4个字节数据时,每发送完一个字节都有传输完成标志。
                清除标志后,再发送下一个字节。说明数据已发出去。
                但用示波器观察MOSI线,却只有一个毫秒级的低电平,却看不到波形。
               CLK线有时钟波形,MISO只是低电平没有任何反应。MCP初始化时,
               MISO为输入,MOSI和CLK为输出。

            请教这是什么原因?是哪里没有设置对吗?求教各位前辈!
沙发
MG_FAE| | 2011-9-1 09:41 | 只看该作者
把设置SPI的代码,PO上来看看

使用特权

评论回复
板凳
yuki774|  楼主 | 2011-9-1 09:45 | 只看该作者
void SPI_init(void)                       
{
//              SPCTL=0xD5;
        SPCTL=0x40;
        SPCTL|=0x10;
        SPCTL|=0x80;
        SPCTL|=0x05;
}
void TRX_SPI(uchar n)
{        uchar i;
        EA=0;
        for(i=0;i<n;i++)
        {
                SPDAT=MDATA[i];
//                        DisNum(0,i,3,MDATA[i],0);
                while((SPSTAT & 0x80)==0);
                SPSTAT |= 0x80;
        }
        EA=1;
}

使用特权

评论回复
地板
MG_FAE| | 2011-9-1 09:54 | 只看该作者
试试看端口设置为推挽输出,
P0M0=0; P0M1=0xf0;
是否为端口驱动力不足造成。

使用特权

评论回复
5
yuki774|  楼主 | 2011-9-1 10:06 | 只看该作者
也试过了出是如此。
初始时:
        P1M0      = 0x40;
        P1M1      = 0xB1;
        P1          = 0xFF;

使用特权

评论回复
6
MG_FAE| | 2011-9-1 10:20 | 只看该作者
空接时候,只有MPC82G516有没有输出?

使用特权

评论回复
7
yuki774|  楼主 | 2011-9-1 11:02 | 只看该作者
现在可以确定有输出,

MPC的SPI时钟速率为16分频,而AT51作为固定从机,
应该不用考虑从机时钟速率也要设为16分频吧??

使用特权

评论回复
8
MG_FAE| | 2011-9-1 11:07 | 只看该作者
MPC82G516的SPI是内嵌的硬件模块,AT51貌似没有这个硬件,
如果AT51使用单纯的I/O口检测,要考虑速度搭配的问题,Fosc/16 对AT51 是否速度太快了?

使用特权

评论回复
9
yuki774|  楼主 | 2011-9-1 11:25 | 只看该作者
这里AT51是51内核增强型,速度不成问题,也有内嵌SPI,
那么,就不用考虑从机时钟速率的设置了。

在这谢过版主!!:)

使用特权

评论回复
10
MG_FAE| | 2011-9-1 13:20 | 只看该作者
:) 如果都是内嵌SPI硬件,那就没有时钟速度的问题

使用特权

评论回复
11
supernan| | 2011-9-1 15:53 | 只看该作者
赞版主一个,真耐心啊

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

44

主题

137

帖子

0

粉丝