Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- int main(void)
- {
- /* Enable GPIOA */
- SET_BIT(RCC->AHB1ENR, RCC_AHB1ENR_GPIOAEN);
- __IO uint32_t tempreg = READ_BIT(RCC->AHB1ENR, RCC_AHB1ENR_GPIOAEN);
- /* Configure LED (PA.4 SO FAR) as push-pull output, No pull-up, pull-down */
- //CLEAR_BIT(GPIOA->MODER, GPIO_MODER_MODER4);
- //SET_BIT(GPIOA->MODER, GPIO_MODER_MODER4_0);
- //CLEAR_BIT(GPIOA->OTYPER, GPIO_ODR_ODR_4);
- //CLEAR_BIT(GPIOA->OSPEEDR, GPIO_OSPEEDER_OSPEEDR4);
- //SET_BIT(GPIOA->OSPEEDR, GPIO_OSPEEDER_OSPEEDR4_0);
- //CLEAR_BIT(GPIOA->PUPDR, GPIO_PUPDR_PUPDR4);
- /* Configure for all LEDs */
- CLEAR_BIT(GPIOA->MODER, 0xffff << 8 ); // 11111111
- SET_BIT(GPIOA->MODER, 0x5555 << 8 ); // 01010101
- CLEAR_BIT(GPIOA->OTYPER, 0xff << 4 ); // 11 11
- CLEAR_BIT(GPIOA->OSPEEDR, 0xffff << 8 );
- SET_BIT(GPIOA->OSPEEDR, 0x5555 << 8 );
- CLEAR_BIT(GPIOA->PUPDR, 0xffff << 8 );
- /* Enable GPIOB */ // BLÅ KNAPP
- SET_BIT(RCC->AHB1ENR, RCC_AHB1ENR_GPIOBEN);
- tempreg = READ_BIT(RCC->AHB1ENR, RCC_AHB1ENR_GPIOBEN);
- CLEAR_BIT(GPIOB->MODER, GPIO_MODER_MODER0);
- CLEAR_BIT(GPIOB->OSPEEDR, GPIO_OSPEEDER_OSPEEDR0);
- SET_BIT(GPIOB->OSPEEDR, GPIO_OSPEEDER_OSPEEDR0_0);
- CLEAR_BIT(GPIOB->PUPDR, GPIO_PUPDR_PUPDR0);
- SET_BIT(GPIOB->PUPDR, GPIO_PUPDR_PUPDR0_0);
- /* Enable GPIOC */
- //SET_BIT(RCC->AHB1ENR, RCC_AHB1ENR_GPIOCEN);
- //tempreg = READ_BIT(RCC->AHB1ENR, RCC_AHB1ENR_GPIOCEN);
- //CLEAR_BIT(GPIOC->MODER, GPIO_MODER_MODER13);
- //CLEAR_BIT(GPIOC->OSPEEDR, GPIO_OSPEEDER_OSPEEDR13);
- //SET_BIT(GPIOC->OSPEEDR, GPIO_OSPEEDER_OSPEEDR13_0);
- //CLEAR_BIT(GPIOC->PUPDR, GPIO_PUPDR_PUPDR13);
- /* Infinite loop */
- while (1) {
- if(!READ_BIT(GPIOB->IDR, GPIO_IDR_IDR_0)){
- GPIOA->ODR ^= 0xff << 4; // 55 ger varannan
- } else
- CLEAR_BIT(GPIOA->ODR, 0xff << 4);
- for(int i=0; i<1000000;i++)
- __NOP();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment