标签:style blog color art 问题 for
最近在调试hardfault handler输出日志信息时候获得了Vincent帮助,感谢
1 void Delay_UART5(uint16_t cnt) 2 { 3 for(;cnt;cnt--); 4 }
1 //void HardFault_Handler(void) //uart5 38400 2 //{ 3 // 4 // uint32_t addrbegin=__get_MSP() ; //???·?· 5 uint32_t addr; 6 // uint8_t i, j, str; 7 // uint16_t loopcnt=0; 8 // 9 //// USART3->CR1 &=~ (1<<7); 10 //// GPIOB->CRH &= 0xFFFF00FF; //uart 3,PB10,PB11 11 //// GPIOB->CRH |= 0x00004100; 12 //// GPIOB->BSRR |= (0x0001<<10); 13 // 14 // UART5->CR1 &=~ (1<<7); 15 // GPIOC->CRH &= 0xFFF0FFFF; //uart 5,PC12TX,PD2RX 16 // GPIOC->CRH |= 0x10000; 17 // GPIOC->BSRR |= (0x0001<<12); 18 // 19 // while(1) 20 // { 21 // Delay_UART5(7969); 22 // loopcnt++; 23 // GPIOC->BSRR |= (0x0001<<12); 24 // 25 // if(loopcnt > 3000) 26 // { 27 // 28 // addr= addrbegin+0x30; 29 // loopcnt=0; 30 // for(i=0; i<255; i++) 31 // { 32 // 33 // str= (*(uint8_t*) addr--); 34 // 35 // if(i>250) 36 // str = ‘\r‘; 37 // 38 // // Delay_UART5(1076*4); //9600 39 // // Delay_UART5(1076); //38400 40 // // Delay_UART5(818); 41 // Delay_UART5(1000); 42 // 43 // GPIOC->BRR |= (0x0001<<12); 44 // // Delay_UART5(1076); //usart end 45 // // Delay_UART5(269); 46 // // Delay_UART5(205); 47 // Delay_UART5(260); 48 // 49 // for(j=0; j<8; j++) 50 // { 51 // if((str&(0x01<<j))) 52 // GPIOC->BSRR |= (0x0001<<12); 53 // else 54 // GPIOC->BRR |= (0x0001<<12); 55 // // Delay_UART5(1076); //usart end 56 // // Delay_UART5(269); 57 // // Delay_UART5(205); 58 // Delay_UART5(260); 59 // } 60 // GPIOC->BSRR |= (0x0001<<12); 61 // // Delay_UART5(1076*2); //usart end 62 // // Delay_UART5(538); 63 // // Delay_UART5(410); 64 // ;Delay_UART5(500); 65 // } 66 // } 67 // } 68 //}
会有两个问题:1,延时函数需要调节,延时要在26us,不同模块都要调
2,进入后去SP的值时候因为变量等原因SP的地址已经改变了
标签:style blog color art 问题 for
原文地址:http://www.cnblogs.com/wwjdwy/p/3818364.html