]> code.bitgloo.com Git - clyne/calculator.git/commitdiff
morse code for debugging
authorClyne Sullivan <tullivan99@gmail.com>
Sat, 30 Dec 2017 18:58:28 +0000 (13:58 -0500)
committerClyne Sullivan <tullivan99@gmail.com>
Sat, 30 Dec 2017 18:58:28 +0000 (13:58 -0500)
main.c

diff --git a/main.c b/main.c
index e4594e68b07fb88698feeac951cfa567128694ec..148f0532709e7155d19dc9897aa1ea795cbc0d18 100644 (file)
--- a/main.c
+++ b/main.c
@@ -13,8 +13,14 @@ extern void delay(uint32_t count);
  *   - got to 40MHz clock\r
  */\r
 \r
+void pulse(uint8_t byte);\r
+\r
 int main(void)\r
 {\r
+       // prepare flash latency for 40MHz operation\r
+       FLASH->ACR &= ~(FLASH_ACR_LATENCY);\r
+       FLASH->ACR |= FLASH_ACR_LATENCY_2WS;\r
+\r
        // turn on HSI\r
        RCC->CR |= RCC_CR_HSION;\r
        while ((RCC->CR & RCC_CR_HSIRDY) != RCC_CR_HSIRDY);\r
@@ -49,15 +55,28 @@ int main(void)
        GPIOA->PUPDR &= ~(GPIO_PUPDR_PUPD5 | GPIO_PUPDR_PUPD0);\r
        GPIOA->PUPDR |= GPIO_PUPDR_PUPD5_0 | GPIO_PUPDR_PUPD0_1; // pd for button\r
 \r
-       while (1) {\r
+       pulse(*((uint8_t *)0x08080000)); // 0b00100101\r
+\r
+       while (1);/* {\r
                delay(500);\r
                //if (GPIOA->IDR & 0x01)\r
                        GPIOA->BSRR |= 1 << 5;\r
                delay(500);\r
                //else\r
                        GPIOA->BRR |= 1 << 5;\r
-       }\r
+       }*/\r
 }\r
 \r
 void _exit(int code)\r
 { for (;;); }\r
+\r
+void pulse(uint8_t byte)\r
+{\r
+       int8_t i = 7;\r
+       do {\r
+               GPIOA->BSRR |= 1 << 5;\r
+               delay((byte & (1 << i)) ? 400 : 100);\r
+               GPIOA->BRR |= 1 << 5;\r
+               delay((byte & (1 << i)) ? 100 : 400);\r
+       } while (--i >= 0);\r
+}\r