我想用软件的方法复位,阅读固件手册,发现SysCtlReset();该函数可以解决问题。 但是我在调用了这个函数之后,整个系统复位之后就起不来了。 对于为什么判断说已经复位了,因为我在这个函数之前有个串口发送数据,结果发到一半就停了,感觉这个复位函数已经起作用了。这种现象是怎么回事,正确的软件复位的方法如何实现?
楼主您用的是那块芯片?哪个版本?
SysCtlReset();可以直接起作用没有特殊的地方。TI有个uart_echo例程您可以在它的基础上试试。
程序死在
UARTConfigSetExpClk(UART1_BASE, SysCtlClockGet(), 9600,
(UART_CONFIG_WLEN_8 | UART_CONFIG_STOP_ONE |
UART_CONFIG_PAR_NONE));
这里头了
我在前面加了个
UARTDisable(UART1_BASE);
好用了,具体原因不明,UARTConfigSetExpClk该函数调用串口禁止使能的程序,非常奇怪。
zhj yan :
在设置之前先禁止呗,以免产生误操作