为什么我的G24模块无法进行UART通讯,电路图是这样的,用串口调试助手能够正确接收单片
最近在做一个高空车项目,初次使用G24模块,为什么我的G24模块无法进行UART通讯,电路图是这样的,用串口调试助手能够正确接收单片机发出的指令,就是没有G24返回指令。http://cache.amobbs.com/bbs_upload782111/files_47/ourdev_693728SAS9XM.png
(原文件名:1.png)
可能是pin53 ON_OFF设置不对,请求帮助,谢谢大家!
调试程序如下:单片机用的是lpc2368。单片机IO输出端通过一个74hc273触发输出值,IO设置我查过了没有问题,问题可能是出在G24使用上。
int main(void)
{
CTR_INT(); // GPIO初始化
// UART0_Init(); // UART0初始化
// UART1_Init(); // UART1初始化
// UART2_Init(); // UART2初始化
// UART3_Init(); // UART3初始化
//TIMER0_Init(); // TIMER0初始化,10s定时开始
// TIMER2_Init(); // TIMER2初始化,150ms定时开始
CTR4_OFF(); // 电源关
Delay_ms(1000);
CTR4_ON(); // 电源开
Delay_ms(1000);
CTR3_ON(); // G24高
Delay_ms(1000); // 延时400毫秒
CTR3_OFF(); // G24低
Delay_ms(1000); // 延时400毫秒
CTR3_ON(); // G24高
// Gprs_Init(); // Gprs初始化,上线,连接中心地址,设置波特率为9600
// Send_Cmd_SignIn(); // 发送SignIn指令
// YtMasterTxStart1Packet(); // 发送Start1指令
// UART2_SendStr(yt_control_g24_info.str_online); // 上线
// Delay_ms(500000);
// YtSlaveConnectCenter(); // 连接中心地址
// Delay_ms(500000);
// if (0 == YtSlaveOnline())
// YtSlaveOnline();
// Delay_ms(5000);
// if (0 == YtSlaveConnectCenter())
// YtSlaveConnectCenter();
// Delay_ms(5000);
while (1)
{
// YtSlaveTxSignInPacket(); // 发送数据
// Delay_ms(50000);
// UART2_SendStr(yt_control_g24_info.str_send_gprs); // Gprs发送
// Delay_ms(50000);
}
/********************************************Copyright******************************************************
**
**
**-------------------------------------------文件信息-------------------------------------------------------
** 文件名称: Protocol.c
** 最后修订日期: 2011-11-1
** 最后版本: 1.0
** 描述: 操作G24模块的函数;
**
**-----------------------------------------------------------------------------------------------------------
** 创建人:
** 创建日期: 2011-11-1
** 版本: 1.0
** 描述: 操作G24模块的函数;
**
**-----------------------------------------------------------------------------------------------------------
** 修订人:
** 修订日期:
** 版本:
** 描述:
**
**-----------------------------------------------------------------------------------------------------------
** 修订人:
** 修订日期:
** 版本:
** 描述:
**
*************************************************************************************************************/
#ifndef _G24_H
#define _G24_H
#include "System.h"
/*******************************************************************************************************
** 操作宏定义
********************************************************************************************************/
#define CTR3 1 << 9; // G24开关
#define CTR4 1 << 10; // G24电源
#define CTR1 1 << 1; // 273脉冲1
#define CTR2 1 << 15; // 273脉冲2
#define CLK(1 << 1)|(1 << 15); // 273脉冲
/*************************************************************************************************************
** 外部函数声明
*************************************************************************************************************/
externvoid CTR_INT(void); // 引脚初始化
extern void CTR3_ON(void); // G24高
extern void CTR3_OFF(void); // G24低
extern void CTR4_ON(void); // G24电源开
extern void CTR4_OFF(void); // G24电源关
#endif
/********************************************Copyright******************************************************
**
**
**-------------------------------------------文件信息-------------------------------------------------------
** 文件名称: G24.c
** 最后修订日期: 2011-11-1
** 最后版本: 1.0
** 描述: 操作G24模块的函数;
**
**-----------------------------------------------------------------------------------------------------------
** 创建人:
** 创建日期: 2011-11-1
** 版本: 1.0
** 描述: 操作G24模块的函数;
**
**-----------------------------------------------------------------------------------------------------------
** 修订人:
** 修订日期:
** 版本:
** 描述:
**
**-----------------------------------------------------------------------------------------------------------
** 修订人:
** 修订日期:
** 版本:
** 描述:
**
*************************************************************************************************************/
#include "config.h" /* 系统配置及类型定义 */
#include "G24.h"
/*************************************************************************************************************
** 函数名称: CTR_INT
**
** 函数描述: 引脚初始化
**
**
** 输入变量: void;
** 返回值: void;
**
** 使用宏或常量: None;
** 使用全局变量: None;
**
** 调用函数: None;
**
** 创建人:
** 创建日期: 2011-11-1
**-------------------------------------------------------------------------------------------------------------
** 修订人:
** 修订日期:
**-------------------------------------------------------------------------------------------------------------
***************************************************************************************************************/
void CTR_INT(void) // 引脚初始化
{
IODIR1 |= 0x00008602; // 设为输出口
IOCLR1 |= CLK;
IOCLR1 |= CTR3;
IOCLR1 |= CTR4;
}
/*************************************************************************************************************
** 函数名称: CTR3_ON
**
** 函数描述: G24高
**
**
** 输入变量: void;
** 返回值: void;
**
** 使用宏或常量: None;
** 使用全局变量: None;
**
** 调用函数: None;
**
** 创建人:
** 创建日期: 2011-11-1
**-------------------------------------------------------------------------------------------------------------
** 修订人:
** 修订日期:
**-------------------------------------------------------------------------------------------------------------
***************************************************************************************************************/
void CTR3_ON(void) // G24高
{
IODIR1 |= 0x00008602;
IOSET1 |= CTR3;
IOCLR1 |= CLK; // 上升沿
Delay_ms(12500);
IOSET1 |= CLK;
}
/*************************************************************************************************************
** 函数名称: CTR3_OFF
**
** 函数描述: G24低
**
**
** 输入变量: void;
** 返回值: void;
**
** 使用宏或常量: None;
** 使用全局变量: None;
**
** 调用函数: None;
**
** 创建人:
** 创建日期: 2011-11-1
**-------------------------------------------------------------------------------------------------------------
** 修订人:
** 修订日期:
**-------------------------------------------------------------------------------------------------------------
***************************************************************************************************************/
void CTR3_OFF(void) // G24低
{
IODIR1 |= 0x00008602;
IOCLR1 |= CTR3;
IOCLR1 |= CLK; // 上升沿
Delay_ms(12500);
IOSET1 |= CLK;
}
/*************************************************************************************************************
** 函数名称: CTR4_ON
**
** 函数描述: G24电源开
**
**
** 输入变量: void;
** 返回值: void;
**
** 使用宏或常量: None;
** 使用全局变量: None;
**
** 调用函数: None;
**
** 创建人:
** 创建日期: 2011-11-1
**-------------------------------------------------------------------------------------------------------------
** 修订人:
** 修订日期:
**-------------------------------------------------------------------------------------------------------------
***************************************************************************************************************/
void CTR4_ON(void) // G24电源开
{
IODIR1 |= 0x00008602;
IOSET1 |= CTR4;
IOCLR1 |= CLK; // 上升沿
Delay_ms(12500);
IOSET1 |= CLK;
}
/*************************************************************************************************************
** 函数名称: CTR4_OFF
**
** 函数描述: G24电源关
**
**
** 输入变量: void;
** 返回值: void;
**
** 使用宏或常量: None;
** 使用全局变量: None;
**
** 调用函数: None;
**
** 创建人:
** 创建日期: 2011-11-1
**-------------------------------------------------------------------------------------------------------------
** 修订人:
** 修订日期:
**-------------------------------------------------------------------------------------------------------------
***************************************************************************************************************/
void CTR4_OFF(void) // G24电源关
{
IODIR1 |= 0x00008602;
IOCLR1 |= CTR4;
IOCLR1 |= CLK; // 上升沿
Delay_ms(12500);
IOSET1 |= CLK;
}
/************************************************************************************************************
** End of file
*************************************************************************************************************/ 我们的电路图感觉和手册上有些地方不一样,但是同事确实这么给的电路图,这么布板就可以通讯上。。。 5脚7脚不需要供电的咩?
页:
[1]