[技术问答] N76E003SPI问题求解答

[复制链接]
184|6
 楼主 | 2019-5-13 17:43 | 显示全部楼层 |阅读模式
由于项目成本要求降低,就选用了N76E003这颗芯片,但是由于对芯片不熟,有些问题要请教大家,就是用spi去读写带spi的芯片数据时,怎么配置读写函数?

使用道具

评论回复
 楼主 | 2019-5-13 17:50 | 显示全部楼层
void SPI_Configuration(void)
{       
        P15_Quasi_Mode;                                                                                                                // P15 (SS) Quasi mode
        P10_Quasi_Mode;                                                                                                                // P10(SPCLK) Quasi mode
        P00_Quasi_Mode;                                                                                                                // P00 (MOSI) Quasi mode
        P01_Quasi_Mode;                                                                                                                // P22 (MISO) Quasi mode
       
        set_DISMODF;                              // SPI 禁止模式错误检测
        clr_SSOE;                                 // 从机选择输出使能位0 = ss作为普通 I/O.

        clr_LSBFE;                                // MSB first   0 = SPI优先传输最高位MSB数据      

        clr_CPOL;                                 // The SPI clock is low in idle mode
        set_CPHA;                                 // The data is sample on the second edge of SPI clock

        set_MSTR;                                 // SPI in Master mode
        SPICLK_DIV16;                                          // Select SPI clock
        set_SPIEN;                                // Enable SPI function
        clr_SPIF;
}
/*******************************************************************************
** Function name:   SPI_SendByte   
**
** Descriptions :   SPI发送一个字节
**  
*******************************************************************************/
void SPI_SendByte(UINT8 ch)
{
        //SPSR –SPI 状态寄存器
        while((SPSR & SET_BIT2) != 0);//有数据待发送或是读取
        //SPDR – SPI数据寄存器
        SPDR = ch;
        Timer0_Delay10us(1);
        while(!(SPSR & SET_BIT7));
        clr_SPIF;
}
/*******************************************************************************
** Function name:   SPI_ReadByte   
**
** Descriptions :   SPI读取一个字节
**  
*******************************************************************************/
uint8_t SPI_WrRdByte(uint8_t byte)
{
        while((SPSR & SET_BIT2) != 0);
        SPDR = byte;
        while(!(SPSR & SET_BIT7));
        clr_SPIF;
        byte = SPDR;
        return byte;
}现在的配置是这样子

使用道具

评论回复
| 2019-5-13 22:07 | 显示全部楼层
然后呢?

使用道具

评论回复
| 2019-5-13 22:08 | 显示全部楼层
官方提供的有2个例子

使用道具

评论回复
| 2019-5-13 22:11 | 显示全部楼层
官方提供的有2个例子

使用道具

评论回复
| 2019-5-13 22:12 | 显示全部楼层
623865cd97b1ad5a46.png

使用道具

评论回复
| 2019-5-14 09:32 | 显示全部楼层
有需要新唐烧录器,了解一下。

使用道具

评论回复
扫描二维码,随时随地手机跟帖
*滑动验证:
您需要登录后才可以回帖 登录 | 注册

本版积分规则

我要发帖 投诉建议 创建版块 申请版主

快速回复

您需要登录后才可以回帖
登录 | 注册
高级模式

论坛热帖

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