philips_lpc210x_target.js

来自「又一个arm上跑的实时内核的源码,gcc 编译」· JavaScript 代码 · 共 49 行

JS
49
字号
function LPC210X_Reset()
{
  TargetInterface.setNSRST(0);
  TargetInterface.setNSRST(1);
  TargetInterface.delay(100);
  TargetInterface.trst();
  TargetInterface.setICEBreakerBreakpoint(0, 0x00000000, 0xFFFFFFFF, 0x00000000, 0xFFFFFFFF, 0x100, 0xF7);
  TargetInterface.waitForDebugState(1000);
  TargetInterface.getICEBreakerRegister(5); /* Clear out Debug Comms Data */
  TargetInterface.pokeWord(0xE0000000, 0); /* Reset Watchdog */
  TargetInterface.pokeWord(0xE0028008, 0); /* Reset IODIR */
  TargetInterface.pokeWord(0xE002C000, 0); /* Reset PINSEL0 */
  TargetInterface.pokeWord(0xE01FC000, 0); /* Reset MAMCR */
  TargetInterface.pokeWord(0xE01FC080, 0);  /* Reset PLL */
  TargetInterface.pokeWord(0xE01FC08C, 0xAA);  /* Feed PLL */
  TargetInterface.pokeWord(0xE01FC08C, 0x55);  /* Feed PLL */
  TargetInterface.pokeWord(0xFFFFF014, 0xFFFFFFFF); /* Disable all interrupts */
  TargetInterface.setICEBreakerBreakpoint(0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000, 0x00);
}

function LPC210X_ResetWithSRAMVectorsAtZero()
{
  LPC210X_Reset();
  TargetInterface.pokeWord(0xE01FC040, 2);
}

function LPC210X_ResetWithFLASHVectorsAtZero()
{
  LPC210X_Reset();
  TargetInterface.pokeWord(0xE01FC040, 1);
}

function LPC210X_ResetWithBootLoaderFLASHVectorsAtZero()
{
  LPC210X_Reset();
  TargetInterface.pokeWord(0xE01FC040, 0);
}

function SRAMReset()
{
  LPC210X_ResetWithSRAMVectorsAtZero();
}

function FLASHReset()
{
  LPC210X_ResetWithFLASHVectorsAtZero()
}

⌨️ 快捷键说明

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