你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

求一个SPI1的代码

[复制链接]
select326 提问时间:2017-9-27 23:58 /
单片机是STM32F103C8T6,SPI1接口,
void SPI1_Init(void)
{
          SPI_InitTypeDef  SPI_InitStructure;
          GPIO_InitTypeDef GPIO_InitStructure;

          RCC_APB2PeriphClockCmd( RCC_APB2Periph_SPI1 | RCC_APB2Periph_GPIOA, ENABLE);
          GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5 |GPIO_Pin_6| GPIO_Pin_7 ;
          GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;
          GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
          GPIO_Init(GPIOA, &GPIO_InitStructure);
//                GPIO_SetBits(GPIOA,GPIO_Pin_5|GPIO_Pin_6|GPIO_Pin_7);

                SPI_InitStructure.SPI_Direction = SPI_Direction_2Lines_FullDuplex;
          SPI_InitStructure.SPI_Mode = SPI_Mode_Master;
          SPI_InitStructure.SPI_DataSize = SPI_DataSize_8b;
          SPI_InitStructure.SPI_CPOL = SPI_CPOL_Low;
          SPI_InitStructure.SPI_CPHA = SPI_CPHA_1Edge;
          SPI_InitStructure.SPI_NSS = SPI_NSS_Soft;
          SPI_InitStructure.SPI_BaudRatePrescaler = SPI_BaudRatePrescaler_16;
          SPI_InitStructure.SPI_FirstBit = SPI_FirstBit_MSB;
          SPI_InitStructure.SPI_CRCPolynomial = 7;
          SPI_Init(SPI1, &SPI_InitStructure);
          /* Enable SPI1 */
          SPI_Cmd(SPI1, ENABLE);
                SPI_ReadWriteByte(0xff);
}


这个代码配置起来后总是无法正确的传输数据 ,使用HAL库是无问题的。
我分析是SPI配置使用不当,求助
收藏 评论7 发布时间:2017-9-27 23:58

举报

7个回答
斜阳__ 回答时间:2017-9-28 14:25:01
既然配置不当就用专业工具cubeMX配置吧

评分

参与人数 1ST金币 +2 收起 理由
zero99 + 2

查看全部评分

MrJiu 回答时间:2017-9-28 14:27:25
CubeMX你值得拥有!!!
回答时间:2017-9-28 17:08:02
楼主,对比一下IO的配置、时钟的配置、数据传输。最好用示波器抓一下波形,立马解决问题。
select326 回答时间:2017-9-28 22:32:19
安 发表于 2017-9-28 17:08
楼主,对比一下IO的配置、时钟的配置、数据传输。最好用示波器抓一下波形,立马解决问题。 ...

没有示波器,业余爱好者,
select326 回答时间:2017-9-28 22:33:31
斜阳__ 发表于 2017-9-28 14:25
既然配置不当就用专业工具cubeMX配置吧

CubeMX配置的工程没有问题,可以正确使用。但是,现在好不容易 使用了正点原子的工程模板,再改回CUBEMX,有些不划算呀
xmshao 回答时间:2017-9-28 23:14:28
可以跟标准库里的SPI工程配置比较下。
select326 回答时间:2017-9-29 21:48:51
xmshao 发表于 2017-9-28 23:14
可以跟标准库里的SPI工程配置比较下。

能不能提供个标准库?我现有的代码都是来源于正点原子的表码

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号二维码 微信公众号
手机版二维码 手机版