X-Git-Url: http://git.linex4red.de/pub/USBasp.git/blobdiff_plain/f01a05415c03b0dd61297849ece2cfcce7f8d3e8..1e0c3bc69a75a835931f5943ce7157f6af97b15f:/Projects/AVRISP-MKII/Lib/ISP/ISPTarget.c?ds=sidebyside diff --git a/Projects/AVRISP-MKII/Lib/ISP/ISPTarget.c b/Projects/AVRISP-MKII/Lib/ISP/ISPTarget.c index f08ee6a0e..2158f4de2 100644 --- a/Projects/AVRISP-MKII/Lib/ISP/ISPTarget.c +++ b/Projects/AVRISP-MKII/Lib/ISP/ISPTarget.c @@ -41,7 +41,7 @@ * * \hideinitializer */ -static uint8_t SPIMaskFromSCKDuration[] PROGMEM = +static const uint8_t SPIMaskFromSCKDuration[] PROGMEM = { #if (F_CPU == 8000000) SPI_SPEED_FCPU_DIV_2, // AVRStudio = 8MHz SPI, Actual = 4MHz SPI @@ -68,7 +68,7 @@ static uint8_t SPIMaskFromSCKDuration[] PROGMEM = * * \hideinitializer */ -static uint16_t TimerCompareFromSCKDuration[] PROGMEM = +static const uint16_t TimerCompareFromSCKDuration[] PROGMEM = { TIMER_COMP(96386), TIMER_COMP(89888), TIMER_COMP(84211), TIMER_COMP(79208), TIMER_COMP(74767), TIMER_COMP(70797), TIMER_COMP(67227), TIMER_COMP(64000), TIMER_COMP(61069), TIMER_COMP(58395), @@ -161,7 +161,7 @@ void ISPTarget_EnableTargetISP(void) DDRB |= ((1 << 1) | (1 << 2)); PORTB |= ((1 << 0) | (1 << 3)); - ISPTarget_ConfigureSoftwareISP(SCKDuration); + ISPTarget_ConfigureSoftwareSPI(SCKDuration); } } @@ -185,7 +185,7 @@ void ISPTarget_DisableTargetISP(void) } } -/** Configures the AVR to produce a .5MHz rescue clock out of the OCR1A pin of the AVR, so +/** Configures the AVR to produce a 4MHz rescue clock out of the OCR1A pin of the AVR, so * that it can be fed into the XTAL1 pin of an AVR whose fuses have been mis-configured for * an external clock rather than a crystal. When used, the ISP speed must be 125KHz for this * functionality to work correctly. @@ -217,14 +217,14 @@ void ISPTarget_ConfigureRescueClock(void) #endif } -/** Configures the AVR's timer ready to produce software ISP for the slower ISP speeds that +/** Configures the AVR's timer ready to produce software SPI for the slower ISP speeds that * cannot be obtained when using the AVR's hardware SPI module. * * \param[in] SCKDuration Duration of the desired software ISP SCK clock */ -void ISPTarget_ConfigureSoftwareISP(const uint8_t SCKDuration) +void ISPTarget_ConfigureSoftwareSPI(const uint8_t SCKDuration) { - /* Configure Timer 1 for software ISP using the specified SCK duration */ + /* Configure Timer 1 for software SPI using the specified SCK duration */ TIMSK1 = (1 << OCIE1A); TCNT1 = 0; OCR1A = pgm_read_word(&TimerCompareFromSCKDuration[SCKDuration - sizeof(SPIMaskFromSCKDuration)]);