📄 reset.c
字号:
// Copyright (c) David Vescovi. All rights reserved.
// Part of Project DrumStix
// Windows Embedded Developers Interest Group (WE-DIG) community project.
// http://www.we-dig.org
// Copyright (c) Microsoft Corporation. All rights reserved.
//------------------------------------------------------------------------------
//
// File: reset.c
//
// This module implements the OEMReset.
//
//------------------------------------------------------------------------------
#include "bsp.h"
#include <nkintr.h>
//------------------------------------------------------------------------------
// Defines
//
#define WATCHDOG_TIMEOUT (OEM_TICKS_1MS * 1000) // 1 sec WD timeout
//------------------------------------------------------------------------------
// Externs
//
//------------------------------------------------------------------------------
// Global Variables
//------------------------------------------------------------------------------
// Local Variables
//
//------------------------------------------------------------------------------
// Local Functions
//
//------------------------------------------------------------------------------
//
// Function: OEMReset
//
// Do a platform reset via the watchdog reset
//
//------------------------------------------------------------------------------
void OEMReset(void)
{
volatile OST_REG_T *pOSTRegs= (volatile OST_REG_T *) OALPAtoVA((PXA255_BASE_REG_PA_OST), FALSE);
pOSTRegs->OSMR3 = pOSTRegs->OSCR + WATCHDOG_TIMEOUT;
pOSTRegs->OWER = OWER_WME;
OALSpinForever(); // will never return!
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -