LPC 1765 485通讯问题求助
这是我的发送程序,请各位大侠帮我看看有没有什么问题?为什么我在小助手看不到我要发送的东西?:uint8_t menu1[] = "Hello NXP Semiconductors \n\r";
int main(void)
{
Uart3Init();
while(1)
{
DIR_H;
print_menu();
DIR_L;
}
}
void Uart3Init(void)
{
PINSEL_CFG_Type PinCfg;
UART_CFG_Type UARTConfigStruct;
UART_FIFO_CFG_Type UARTFIFOConfigStruct;
PinCfg.Funcnum = 3;
PinCfg.OpenDrain = 0;
PinCfg.Pinmode = 0;
//TXD3-P0.25
PinCfg.Pinnum = 25;
PinCfg.Portnum = 0;
PINSEL_ConfigPin(&PinCfg);
//RXD3-P0.26
PinCfg.Pinnum = 26;
PINSEL_ConfigPin(&PinCfg);
UART_ConfigStructInit(&UARTConfigStruct);
UART_Init((LPC_UART_TypeDef *)LPC_UART3, &UARTConfigStruct);
UART_FIFOConfigStructInit(&UARTFIFOConfigStruct);
UART_FIFOConfig((LPC_UART_TypeDef *)LPC_UART3, &UARTFIFOConfigStruct);
UART_TxCmd((LPC_UART_TypeDef *)LPC_UART3, ENABLE);
UART_IntConfig(LPC_UART3, UART_INTCFG_RBR, ENABLE);
UART_IntConfig(LPC_UART3, UART_INTCFG_RLS, ENABLE/*DISABLE*/);
NVIC_SetPriority(UART3_IRQn, ((0x01<<3)|0x01));
NVIC_EnableIRQ(UART3_IRQn);//
}
void print_menu(void)
{
UART_Send(LPC_UART3, menu1, sizeof(menu1), BLOCKING);
} 还有什么需要配置的地方吗?? 可以显示了~~但是显示的是乱码是怎么回事啊? bajie_zhl19 发表于 2014-8-21 16:24
可以显示了~~但是显示的是乱码是怎么回事啊?
乱码一般是波特率不对或者校验有问题 tam2907 发表于 2014-8-21 16:42
乱码一般是波特率不对或者校验有问题
如程序所示~我用的是默认值9600~我调试的时候也是9600的接收~~这个跟我用的是内部晶振有关系吗? bajie_zhl19 发表于 2014-8-22 14:25
如程序所示~我用的是默认值9600~我调试的时候也是9600的接收~~这个跟我用的是内部晶振有关系吗? ...
用示波器捕获一下波形,计算一下实际的波特率,看看波特率对不对。 你怎么接收的,首先物理上要对,485是差分,计算机端要接485转232;其次,小助手会有多种显示格式,比如hex,dec,char等,选对了才好 yangwenfan88 发表于 2014-8-26 20:33
用示波器捕获一下波形,计算一下实际的波特率,看看波特率对不对。
谢谢大侠~~问题解决了~是我A/B线接反了~{:sad:} bbs2009 发表于 2014-8-28 12:27
用逻辑分析仪比示波器 更靠谱
谢谢大侠~~问题解决了~是我A/B线接反了~{:sad:} 7802848 发表于 2014-8-29 10:08
你怎么接收的,首先物理上要对,485是差分,计算机端要接485转232;其次,小助手会有多种显示格式,比如hex ...
谢谢大侠~~问题解决了~是我A/B线接反了~{:sad:}
页:
[1]