打印
[STM8]

STM8S003F3P SPI 多从机 硬件NSS

[复制链接]
1049|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
heise007|  楼主 | 2014-7-16 21:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我用5片STM8S003F3P 写SPI,一片做主,4片做从,使能硬件NSS,接收中断。现在的现象是用软件模式可以接收到数据,但是硬件NSS就不行啊,不知道为什么,帮帮忙啊 ,,贴上从机的代码
void main(void){
        
        __CLK_CKDIVR = 0;
        __PC_DDR |= __SPI_MISO_MSK;
        __PC_DDR &= ~(__SPI_MOSI_MSK | __SPI_SCK_MSK );
        __PC_CR1 |= (__SPI_MISO_MSK | __SPI_MOSI_MSK | __SPI_SCK_MSK );
        __PC_CR2 &= ~(__SPI_MISO_MSK | __SPI_MOSI_MSK | __SPI_SCK_MSK );
        
        
        __PA_DDR &= ~__NSS_MSK;
        __PA_CR1 |= __NSS_MSK;
        __PA_CR2 &= ~__NSS_MSK;
        
        __SPI_CR1 = 0;//从模式,MSB先发,SPI模式0
        __SPI_CR1 |= __CPOL;
        
        __SPI_CR2 = 0;//双向单线,全双工,禁止软件从设备管理
        //__SPI_CR2 |= __SSM;
        __SPI_ICR |= __RXIE;//使能接收中断
        
        __SPI_CR1 |= __SPE;
        
        _asm("rim\n");
        
        while (1);
}
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

2

帖子

0

粉丝