c - STM32F446RE 没有得到来自 SIM800L 模块的 AT 命令的响应
问题描述
我正在尝试从 SIM800L 模块获取 AT 命令的答案。我正在使用 STM32F446RE。我通过 USART1 发送了正确的命令,但我没有从模块得到任何响应。我试过不同的波特率,但还是不行(SIM800L 有自动波特率检测)。我在 HC-05 模块上使用了相同的配置,我得到了响应。我通过逻辑分析仪观察发送和接收(我没有得到)消息,但它仍然不起作用。模块供电正常,每 3 秒闪烁一次,表示已连接到网络。我试图找到答案很长时间,但我没有找到任何答案。下面我放了一些代码,显示我的配置和逻辑分析仪消息和硬件连接的屏幕截图。很高兴从你那里得到一些建议来解决这个问题。
void HAL_UART_MspInit(UART_HandleTypeDef* huart){
GPIO_InitTypeDef GPIO_InitStruct = {0};
if(huart->Instance==USART1)
{
/* USER CODE BEGIN USART1_MspInit 0 */
/* USER CODE END USART1_MspInit 0 */
/* Peripheral clock enable */
__HAL_RCC_USART1_CLK_ENABLE();
__HAL_RCC_GPIOA_CLK_ENABLE();
/**USART1 GPIO Configuration
PA9 ------> USART1_TX
PA10 ------> USART1_RX
*/
GPIO_InitStruct.Pin = GPIO_PIN_9|GPIO_PIN_10;
GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
GPIO_InitStruct.Pull = GPIO_NOPULL;
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH;
GPIO_InitStruct.Alternate = GPIO_AF7_USART1;
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
/* USART1 interrupt Init */
HAL_NVIC_SetPriority(USART1_IRQn, 0, 0);
HAL_NVIC_EnableIRQ(USART1_IRQn);
/* USER CODE BEGIN USART1_MspInit 1 */
/* USER CODE END USART1_MspInit 1 */
}
}
static void MX_USART1_UART_Init(void){
/* USER CODE BEGIN USART1_Init 0 */
/* USER CODE END USART1_Init 0 */
/* USER CODE BEGIN USART1_Init 1 */
/* USER CODE END USART1_Init 1 */
huart1.Instance = USART1;
huart1.Init.BaudRate = 9600;
huart1.Init.WordLength = UART_WORDLENGTH_8B;
huart1.Init.StopBits = UART_STOPBITS_1;
huart1.Init.Parity = UART_PARITY_NONE;
huart1.Init.Mode = UART_MODE_TX_RX;
huart1.Init.HwFlowCtl = UART_HWCONTROL_NONE;
huart1.Init.OverSampling = UART_OVERSAMPLING_16;
if (HAL_UART_Init(&huart1) != HAL_OK)
{
Error_Handler();
}
/* USER CODE BEGIN USART1_Init 2 */
/* USER CODE END USART1_Init 2 */
}
解决方案
推荐阅读
- r - 在R中绘制多个带有长文本标题的图表?
- javascript - 将映射逻辑从适配器存储到数据库
- java - 如何在每行中创建具有不同颜色的微调器
- swift - Swift UITableView / UICollectionVIew 将数据传递到 cellForRowAt 中的单元格返回 nil
- ruby - 编写我的块时遇到问题,语法错误?
- python - AttributeError:模块“seaborn”没有属性“热图”
- python - 如何将误差线添加到分组条形图中?
- import - 导入的 Python 文件在正文或任何主函数中没有任何代码运行。我该如何操作这个文件?
- azure-data-factory - 从 ADF 触发 Azure ML 工作区中的 Jupyter Notebook
- python - Google Foobar - 请通过编码消息测试用例失败