程序调试进不了主程序,进入其他文件

2019-08-22 16:05发布

debug 运行后直接进入其他文件进入不了主程序,大神帮忙看下

#include"stm32f10x_it.h"               
#include"stm32f10x.h"

void RCC_Configuration(void);
void GPIO_Configuration(void);
void delay1ms(u16 z)
{
        u8 y;
        for(;z>0;z--)
                for(y=110;y>0;y--);
}
int main(void)
{
        u16 F,M,BRR;
        u32 Bound;
        float Div;       
       
        RCC_Configuration();
        GPIO_Configuration();
       
        USART1->CR1=USART1->CR1 | (1<<13);  //UE
        USART1->CR1=USART1->CR1 & ~(1<<12);        //M
        USART1->CR1=USART1->CR1 & ~(3<<13);       
        Bound=9600;
        Div=(float)72*1000*1000/(16*Bound);
        M=Div;
        F=(Div-M)*16;
        BRR=(M<<4)+F;
        USART1->BRR=BRR;       
       
        USART1->DR='A';
}
void RCC_Configuration(void)
{
        RCC_DeInit();                       
        RCC_HSEConfig(RCC_HSE_ON);       
        while(RCC_GetFlagStatus(RCC_FLAG_HSERDY) == RESET);
       
        RCC_HCLKConfig(RCC_SYSCLK_Div1);                //HCLK = SYSCLK
        RCC_PCLK2Config(RCC_HCLK_Div1);                        //PCLK2 =  HCLK
        RCC_PCLK1Config(RCC_HCLK_Div2);                        //PCLK1 = HCLK/2
        RCC_PLLConfig(RCC_PLLSource_HSE_Div1,RCC_PLLMul_9);        //PLLCLK = 8MHZ * 9 =72MHZ
        RCC_PLLCmd(ENABLE);                        //Enable PLLCLK

        while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET);        //Wait till PLLCLK is ready
    RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK);        //Select PLL as system clock
        while(RCC_GetSYSCLKSource()!=0x08);                //Wait till PLL is used as system clock source

        RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);       
        RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC,ENABLE);       
        RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABLE);       
        RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1,ENABLE);
       
}
void GPIO_Configuration(void)
{
  GPIO_InitTypeDef GPIO_InitStructure;

  /* Configure USARTx_Tx as alternate function push-pull */
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9;
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;
  GPIO_Init(GPIOA, &GPIO_InitStructure);

  /* Configure USARTx_Rx as input floating */
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_10;
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;
  GPIO_Init(GPIOA, &GPIO_InitStructure);

}

void USART_Configuration(u32 BaudRate)
{
        USART_InitTypeDef USART_InitStructure;
        USART_InitStructure.USART_BaudRate = BaudRate;
        USART_InitStructure.USART_WordLength = USART_WordLength_8b;
        USART_InitStructure.USART_StopBits = USART_StopBits_1;
        USART_InitStructure.USART_Parity = USART_Parity_No;
        USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None;
        USART_InitStructure.USART_Mode = USART_Mode_Tx | USART_Mode_Rx;  
        USART_Init(USART1, &USART_InitStructure);
        USART_Cmd(USART1, ENABLE);
}


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
16条回答
十七年
1楼-- · 2019-08-23 15:41
Electronic 发表于 2017-4-6 10:58
你对照原理图,看看哪个引脚是BOOT0,然后用万用表测量是不是低电平

我只是在MDK上debug调下程序,没烧到板子上
Da Wen
2楼-- · 2019-08-23 16:38
修改Debug选项,run to main就行了吧 图片1.png
十七年
3楼-- · 2019-08-23 19:24
 精彩回答 2  元偷偷看……
十七年
4楼-- · 2019-08-23 20:36
yklstudent 发表于 2017-4-6 12:56
你软件仿真?买实现仿真吧,别省这点小钱了

我看的视频是用的软件仿真。。。。我有jlink 怎么使用jlink仿真?
XUZJWWSZ
5楼-- · 2019-08-24 01:38
360截图20141014170255056.jpg 360截图20141021090646757.jpg

我用这种方法可以仿真103,但是107不行。后来有资料说软件仿真支持的不好,还是要硬件才行。
szczyb1314
6楼-- · 2019-08-24 02:48
十七年 发表于 2017-4-6 10:48

程序是对的啊,你这只是进入了启动文件

一周热门 更多>