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

STM32F410RB HAL SPI驱动2位数码管,显示问题

[复制链接]
pinganbo 提问时间:2019-12-6 15:24 /
首先程序也是参考了论坛里各位前辈改的。我用的芯片是stm32f410RB,自己画的板子。也是STM32CubeMX配置的,HAL库编写,驱动2片74HC595显示2位数码管。现在的问题是,2位数码管不能同时显示,1亮1灭。程序如下:

/******主程序*********/
int main(void)
{
uint8_t TX_Data[2]={0x60,0xDA,};//效果是想让2位数码管分别显示1和2  
HAL_Init();
SystemClock_Config();
MX_GPIO_Init();
MX_SPI1_Init();
while (1)
  {
    HAL_SPI_MspInit(&hspi1);

  //问题出现在这里:单独写HAL_SPI_Transmit(&hspi1,TX_Data,1,1000);第一位数码管只显示1,第二位不亮,如下图1
             单独写HAL_SPI_Transmit(&hspi1,TX_Data,2,1000);第一位数码管只显示2,第二位不亮,如下图2


    HAL_GPIO_WritePin(LAT_GPIO_Port, LAT_Pin , GPIO_PIN_RESET);
    HAL_Delay(100);
    HAL_GPIO_WritePin(LAT_GPIO_Port, LAT_Pin , GPIO_PIN_SET);
    HAL_Delay(100);        
    HAL_GPIO_WritePin(LAT_GPIO_Port, LAT_Pin , GPIO_PIN_RESET);
  }
}
/****************/
想请教一下,是哪里写的不对???我的电路图也是参考网上找的相关的2片74HC595控制4位数码管搭建的。如下图,
74HC595的Q1位有数据,Q2就不亮了。
  


LED原理图.JPG
1.JPG
2.JPG
收藏 1 评论1 发布时间:2019-12-6 15:24

举报

1个回答
慎微 回答时间:2019-12-7 09:44:35
楼主啊,小心不要用“先辈”这个词,除非你明确对方已不在人间。当然大家晓得您可能使用“前辈”吧
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版