From 67d97164b358ae5c9c0038e58302a6f89c7bb3c5 Mon Sep 17 00:00:00 2001 From: Josh Rahm Date: Mon, 15 Jan 2018 15:32:16 -0700 Subject: use uint32_t for copying the data sections. --- system-clock/src/isr_vector.c | 14 ++++++------- system-clock/src/main.c | 46 ++++++++++++++++++++++++------------------- 2 files changed, 33 insertions(+), 27 deletions(-) (limited to 'system-clock/src') diff --git a/system-clock/src/isr_vector.c b/system-clock/src/isr_vector.c index b432732..dd7fea9 100644 --- a/system-clock/src/isr_vector.c +++ b/system-clock/src/isr_vector.c @@ -7,11 +7,11 @@ void main(); /* These are defined in the linker script. */ -extern uint8_t INIT_DATA_VALUES; -extern uint8_t DATA_SEGMENT_START; -extern uint8_t DATA_SEGMENT_STOP; -extern uint8_t BSS_START; -extern uint8_t BSS_END; +extern uint32_t INIT_DATA_VALUES; +extern uint32_t DATA_SEGMENT_START; +extern uint32_t DATA_SEGMENT_STOP; +extern uint32_t BSS_START; +extern uint32_t BSS_END; /* @@ -20,8 +20,8 @@ extern uint8_t BSS_END; */ void init() { - uint8_t* src; - uint8_t* dest; + uint32_t* src; + uint32_t* dest; src = &INIT_DATA_VALUES; dest = &DATA_SEGMENT_START; diff --git a/system-clock/src/main.c b/system-clock/src/main.c index 5c9ecfc..da4afd0 100644 --- a/system-clock/src/main.c +++ b/system-clock/src/main.c @@ -1,5 +1,8 @@ #include "gpio.h" #include "delay.h" +#include "clock.h" + +volatile uint32_t delay_amt = 65535; /* Main function. This gets executed from the interrupt vector defined above. */ int main() @@ -10,33 +13,36 @@ int main() gpio_output_pin_t pin3 = set_gpio_pin_output(port_b, PIN_3); gpio_output_pin_t pin1 = set_gpio_pin_output(port_b, PIN_1); + /* Enable a higher clock frequency. */ + set_sys_clock(); + while(1) { /* Set the GPIO pin to high. */ pin_on(pin3); pin_off(pin1); - delay(65535); - delay(65535); - delay(65535); - delay(65535); - delay(65535); - delay(65535); - delay(65535); - delay(65535); - delay(65535); - delay(65535); + delay(delay_amt); + delay(delay_amt); + delay(delay_amt); + delay(delay_amt); + delay(delay_amt); + delay(delay_amt); + delay(delay_amt); + delay(delay_amt); + delay(delay_amt); + delay(delay_amt); /* Set the GPIO pin to low. */ pin_off(pin3); pin_on(pin1); - delay(65535); - delay(65535); - delay(65535); - delay(65535); - delay(65535); - delay(65535); - delay(65535); - delay(65535); - delay(65535); - delay(65535); + delay(delay_amt); + delay(delay_amt); + delay(delay_amt); + delay(delay_amt); + delay(delay_amt); + delay(delay_amt); + delay(delay_amt); + delay(delay_amt); + delay(delay_amt); + delay(delay_amt); } } -- cgit