You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
62 lines
2.0 KiB
JavaScript
62 lines
2.0 KiB
JavaScript
/******************************************************************************
|
|
Target Script for ATMEL AT91SAM7.
|
|
|
|
Copyright (c) 2004 Rowley Associates Limited.
|
|
|
|
This file may be distributed under the terms of the License Agreement
|
|
provided with this software.
|
|
|
|
THIS FILE IS PROVIDED AS IS WITH NO WARRANTY OF ANY KIND, INCLUDING THE
|
|
WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|
|
******************************************************************************/
|
|
|
|
function Reset()
|
|
{
|
|
/* Reset and stop target */
|
|
TargetInterface.pokeWord(0xFFFFFD00, 0xA500000D); // RSTC_CR
|
|
TargetInterface.waitForDebugState(1000);
|
|
/* Configure Clock */
|
|
TargetInterface.pokeWord(0xFFFFFC20, 0x00000601); // CKGR_MOR
|
|
TargetInterface.delay(10);
|
|
TargetInterface.pokeWord(0xFFFFFC2C, 0x00191C05); // CKGR_PLLR
|
|
TargetInterface.delay(10);
|
|
TargetInterface.pokeWord(0xFFFFFC30, 0x00000007); // CKGR_MCKR
|
|
TargetInterface.delay(10);
|
|
}
|
|
|
|
function RAMReset()
|
|
{
|
|
Reset();
|
|
/* Remap SRAM to 0x00000000 */
|
|
TargetInterface.pokeWord(0xFFFFFF00, 1); // MC_RCR
|
|
}
|
|
|
|
function FLASHReset()
|
|
{
|
|
Reset();
|
|
|
|
// Mask All interrupt pAic->AIC_IDCR = 0xFFFFFFFF;
|
|
|
|
TargetInterface.pokeWord(0xffffffff,0xFFFFF124);
|
|
TargetInterface.pokeWord(0xffffffff,0xFFFFF128);
|
|
// disable peripheral clock Peripheral Clock Disable Register
|
|
TargetInterface.pokeWord(0xffffffff,0xFFFFFC14);
|
|
|
|
// #define AT91C_TC0_SR ((AT91_REG *) 0xFFFA0020) // (TC0) Status Register
|
|
// #define AT91C_TC1_SR ((AT91_REG *) 0xFFFA0060) // (TC1) Status Register
|
|
// #define AT91C_TC2_SR ((AT91_REG *) 0xFFFA00A0) // (TC2) Status Register
|
|
TargetInterface.peekWord(0xFFFA0020);
|
|
TargetInterface.peekWord(0xFFFA0060);
|
|
TargetInterface.peekWord(0xFFFA00A0);
|
|
|
|
// for (__mac_i=0;__mac_i < 8; __mac_i++)
|
|
// {
|
|
// AT91C_BASE_AIC->AIC_EOICR
|
|
// __mac_pt = TargetInterface.peekWord(0xFFFFF130);
|
|
|
|
// }
|
|
// __message "------------------------------- AIC 2 INIT ---------------------------------------------";
|
|
|
|
}
|
|
|