野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 17217|回复: 1

拔掉jtag,程序运行不正常

[复制链接]
发表于 2015-1-11 10:10:54 | 显示全部楼层 |阅读模式
本帖最后由 zrx171407518 于 2015-1-11 11:57 编辑

现在碰到一个现象,插上jtag,程序跑起来没有问题,调试什么的都ok。
但是拔掉jtag后,CPU别的都在运行,管脚输出正常。但是串口就发送接收不了。
初始化设置应该没有什么问题。具体的现象是:插上jtag后,启动没有问题,拔了jtag后,程序运行,但是串口接收发送不行,
再插上jtag,串口接收发送正常,中间没有重启,不知道是不是哪部分电压串了
  1. void USART2_Config(void)
  2. {
  3.         GPIO_InitTypeDef GPIO_InitStructure;
  4.         USART_InitTypeDef USART_InitStructure;
  5.         
  6.         /* config USART1 clock */
  7.         //RCC_APB2PeriphClockCmd(RCC_APB1Periph_USART2 | RCC_APB2Periph_GPIOA, ENABLE);
  8.         
  9.         RCC_APB1PeriphClockCmd(RCC_APB1Periph_USART2, ENABLE);
  10.         RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_AFIO, ENABLE);
  11.         
  12.         /* USART1 GPIO config */
  13.         /* Configure USART1 Tx (PA.09) as alternate function push-pull */
  14.         GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2;
  15.         GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;
  16.         GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
  17.         GPIO_Init(GPIOA, &GPIO_InitStructure);   
  18.         /* Configure USART1 Rx (PA.10) as input floating */
  19.         GPIO_InitStructure.GPIO_Pin = GPIO_Pin_3;
  20.         GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;
  21.         GPIO_Init(GPIOA, &GPIO_InitStructure);
  22.         
  23.         /* USART1 mode config */
  24.         USART_InitStructure.USART_BaudRate = 9600;
  25.         USART_InitStructure.USART_WordLength = USART_WordLength_8b;
  26.         USART_InitStructure.USART_StopBits = USART_StopBits_1;
  27.         USART_InitStructure.USART_Parity = USART_Parity_No ;
  28.         USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None;
  29.         USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx;
  30.         USART_Init(USART2, &USART_InitStructure);
  31.         
  32.         /* ê1Äü′®¿ú1½óêÕÖD¶Ï */
  33.         USART_ITConfig(USART2, USART_IT_RXNE, ENABLE);
  34.         
  35.         USART_Cmd(USART2, ENABLE);
  36. }
复制代码

  1. void NVIC_Configuration(void)
  2. {
  3.         NVIC_InitTypeDef NVIC_InitStructure;
  4.         /* Configure the NVIC Preemption Priority Bits */  
  5.         NVIC_PriorityGroupConfig(NVIC_PriorityGroup_0);
  6.         
  7.         /* Enable the USARTy Interrupt */
  8.         NVIC_InitStructure.NVIC_IRQChannel = USART2_IRQn;         
  9.         NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;
  10.         NVIC_InitStructure.NVIC_IRQChannelSubPriority = 1;
  11.         NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
  12.         NVIC_Init(&NVIC_InitStructure);
  13. }
复制代码



回复

使用道具 举报

发表于 2015-1-12 09:05:11 | 显示全部楼层
那应该是没有共地的问题,jtag使你的板子跟电脑共地了 ,但没有它不行,不知道是不是你板子usb接口的地线接触不良。不过,肯定是因为共地的问题导致的
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-11-25 00:10 , Processed in 0.038657 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表