“玩板”+ 共享单车控制板-GPRS模块SIM800C
[复制链接]
本帖最后由 chenzhufly 于 -3-16 20:23 编辑
SIM800C是一款四频GSM/GPRS模块,为城堡孔封装。其性能稳定,外观小巧,性价比高,能满足客户的多种需求。SIM800C工作频率为GSM/GPRS 850/900/1800/1900MHz,可以低功耗实现语音、SMS和数据信息的传输。SIM800C尺寸为17.6*15.7*2.3mm,能适用于各种紧凑型产品设计需求。
sim800c.jpg (44.01 KB, 下载次数: 0)
-3-16 17:09 上传
下图右边的那个模块了:
微信图片_112319.jpg (445.21 KB, 下载次数: 0)
-3-16 16:58 上传
提醒一下需要主要画圈的几个管脚:
微信图片_165605.png (162.56 KB, 下载次数: 0)
-3-16 16:59 上传
尤其需要注意的是powerkey,手册中特别提到,需要拉底PWRKEY至少1秒,一直调试不成功,就是在这吃的亏,切记,切记!
QQ图片170045.png (65.9 KB, 下载次数: 0)
-3-16 17:01 上传
当然调试不成功,我也没闲着,我做过了串口的透传程序,也就是在UART1UART2之间透传,这样可以通过串口助手来调试SIM800C模块,代码很简单,在stm32cube中设置串口1,串口2中断。
void USART1_IRQHandler(void)
{
/* USER CODE BEGIN USART1_IRQn 0 */
/* USER CODE END USART1_IRQn 0 */
HAL_UART_IRQHandler(&huart1);
/* USER CODE BEGIN USART1_IRQn 1 */
uint8_t Res;
if(RESET != __HAL_UART_GET_FLAG(&huart1, UART_FLAG_RXNE))
{
Res = USART1->DR;//¶á衽óêÕμ½μÄêy¾Y
}
USART2->DR = Res;
/* USER CODE END USART1_IRQn 1 */
}
/**
* @brief This function handles USART2 global interrupt.
*/
void USART2_IRQHandler(void)
{
/* USER CODE BEGIN USART2_IRQn 0 */
/* USER CODE END USART2_IRQn 0 */
HAL_UART_IRQHandler(&huart2);
/* USER CODE BEGIN USART2_IRQn 1 */
uint8_t Res;
if(RESET != __HAL_UART_GET_FLAG(&huart2, UART_FLAG_RXNE))
{
Res = USART2->DR;//¶á衽óêÕμ½μÄêy¾Y
}
USART1->DR = Res;
/* USER CODE END USART2_IRQn 1 */
}
在主程序中打开VBAT,拉底PWRKEY 3秒;
SIM800C_VBAT_On;
SIM800C_POWER_Off;
HAL_Delay(3000);
SIM800C_POWER_On;
使用串口助手发送AT命令,测试结果还是不错的,最起码SIM800C是工作了
QQ图片170810.png (13.19 KB, 下载次数: 0)
-3-16 17:08 上传
此内容由EEWORLD论坛网友chenzhufly原创,如需转载或用于商业用途需征得作者同意并注明出处