找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 3552|回復(fù): 1
打印 上一主題 下一主題
收起左側(cè)

stm8 spi 通信,獲得的數(shù)據(jù)都是0xff或是0xffff,這是哪里問(wèn)題?

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:240510 發(fā)表于 2017-12-22 11:21 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
我采用的單片機(jī)是stm8L051系列的

這個(gè)是我spi配置的初始化函數(shù)

void MySPI_Init(void)
{

   /* SPI Periph clock enable */
   CLK_PeripheralClockConfig(SPI_CLK, ENABLE);

   /* Set the MOSI,MISO and SCK at high level */
   GPIO_Init(SPI_GPIO_PORT, SPI_MOSI_PIN, GPIO_Mode_Out_PP_High_Fast);
   GPIO_Init(SPI_GPIO_PORT, SPI_MISO_PIN, GPIO_Mode_In_PU_No_IT);
   GPIO_Init(SPI_GPIO_PORT, SPI_SCK_PIN, GPIO_Mode_Out_PP_High_Fast);

  /* Configure FLASH_CS as Output push-pull, used as Flash Chip select */
   GPIO_Init(SPI_GPIO_PORT, SPI_CS_PIN, GPIO_Mode_Out_PP_High_Fast);
   
   GPIO_ExternalPullUpConfig(SPI_GPIO_PORT,SPI_MISO_PIN,ENABLE);
   
    SPI_DeInit(SPI1);
    SPI_Init(SPI1, SPI_FirstBit_MSB, SPI_BaudRatePrescaler_2, SPI_Mode_Master,
            SPI_CPOL_High, SPI_CPHA_1Edge, SPI_Direction_2Lines_FullDuplex,
            SPI_NSS_Soft, (uint8_t)0x07);
   
    SPI_Cmd(SPI1,ENABLE);
   
}

#define SPI_CLK                   CLK_Peripheral_SPI1
#define SPI_SCK_PIN               GPIO_Pin_5                  /* PB.05 */
#define SPI_MISO_PIN              GPIO_Pin_7                  /* PB.07 */
#define SPI_MOSI_PIN              GPIO_Pin_6                  /* PB.06 */
#define SPI_CS_PIN                GPIO_Pin_4                  /* PE.04 */
#define SPI_GPIO_PORT          GPIOB                       /* GPIOE */


這些是我獲得額數(shù)據(jù)
0xff      0xffff
請(qǐng)問(wèn)為什么獲得的都是這樣的數(shù)據(jù),是硬件問(wèn)題還是程序配置問(wèn)題
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:240510 發(fā)表于 2017-12-22 11:44 | 只看該作者
原來(lái)這是spi配置問(wèn)題
spi配置如下

void MySPI_Init(void)
{

   /* SPI Periph clock enable */
   CLK_PeripheralClockConfig(SPI_CLK, ENABLE);

   /* Set the MOSI,MISO and SCK at high level */
//   GPIO_Init(SPI_GPIO_PORT, SPI_MOSI_PIN, GPIO_Mode_Out_PP_High_Fast);
   GPIO_Init(SPI_GPIO_PORT, SPI_MISO_PIN, GPIO_Mode_In_PU_No_IT);
//   GPIO_Init(SPI_GPIO_PORT, SPI_SCK_PIN, GPIO_Mode_Out_PP_High_Fast);

  /* Configure FLASH_CS as Output push-pull, used as Flash Chip select */
   GPIO_Init(SPI_GPIO_PORT, SPI_CS_PIN, GPIO_Mode_Out_PP_High_Fast);
   
   GPIO_ExternalPullUpConfig(SPI_GPIO_PORT,SPI_MOSI_PIN|SPI_SCK_PIN,ENABLE);
   
    SPI_DeInit(SPI1);
    SPI_Init(SPI1, SPI_FirstBit_MSB, SPI_BaudRatePrescaler_2, SPI_Mode_Master,
            SPI_CPOL_Low, SPI_CPHA_1Edge, SPI_Direction_2Lines_FullDuplex,
            SPI_NSS_Soft, (uint8_t)0x07);
   
    SPI_Cmd(SPI1,ENABLE);
   
}

#define SPI_CLK                   CLK_Peripheral_SPI1
#define SPI_SCK_PIN               GPIO_Pin_5                  /* PB.05 */
#define SPI_MISO_PIN              GPIO_Pin_7                  /* PB.07 */
#define SPI_MOSI_PIN              GPIO_Pin_6                  /* PB.06 */
#define SPI_CS_PIN                GPIO_Pin_4                  /* PE.04 */
#define SPI_GPIO_PORT          GPIOB                       /* GPIOE */
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表