+

来自「基于Luminary远程在线升级解决方案」· 代码 · 共 41 行

TXT
41
字号
#include "config.h"

int main(void)
{
  SysCtlClockSet(SYSCTL_SYSDIV_10 | SYSCTL_USE_PLL |
                 SYSCTL_XTAL_6MHZ | SYSCTL_OSC_MAIN);
  
  SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOA);
  GPIOPadConfigSet(USE_PORT,LED1 | LED2 |LED3 | LED4,GPIO_STRENGTH_2MA,GPIO_PIN_TYPE_STD_WPU);
  GPIODirModeSet(USE_PORT,LED1 | LED2 |LED3 | LED4,GPIO_DIR_MODE_OUT);
  
  Uart0Init(115200,1);
  IntMasterEnable();
  Uart0Send((uint8 *)("输入R将复位CPU。\r\n"),strlen("输入R将复位CPU。\r\n"));
  while(1)
  {
    GPIOPinWrite(USE_PORT,LED1 | LED2 | LED3 | LED4,~(LED1 | LED2 | LED3 | LED4));
    TimeDelay(500000);
    GPIOPinWrite(USE_PORT,LED1 | LED2 | LED3 | LED4,(LED1 | LED2 | LED3 | LED4));
    TimeDelay(500000);
    if(RcvOver != 0)
    {
      if(strncmp((char *)RcvBuffer,"R",1) == 0)
      {
        Uart0Send(RcvBuffer,RcvNum);
        Uart0Send("\r\n",strlen("\r\n"));
        Uart0Send((uint8 *)("正在复位CPU。\r\n"),strlen("正在复位CPU。\r\n"));
        TimeDelay(500000);
        SysCtlReset();
      }
      else
      {
        Uart0Send(RcvBuffer,RcvNum);
        Uart0Send("\r\n",strlen("\r\n"));
      }
      RcvNum  = 0;
      RcvOver = 0;
    }
  }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?