zoukankan      html  css  js  c++  java
  • ChibiOS/RT移植到STM32F407

    官网地址:http://www.chibios.org/dokuwiki/doku.php

    下载源码

    找到STM32F407的demos程序(chibiosdemosSTM32RT-STM32F407-DISCOVERY

    /*
     * This is a periodic thread that does absolutely nothing except flashing
     * a LED.
     */
    static THD_WORKING_AREA(waThread1, 128);
    static THD_FUNCTION(Thread1, arg) {
    
      (void)arg;
      chRegSetThreadName("blinker");
      while (true) {
        palSetPad(GPIOD, GPIOD_LED3);       /* Orange.  根据个人开发板配置*/
        chThdSleepMilliseconds(500);
        palClearPad(GPIOD, GPIOD_LED3);     /* Orange.  */
        chThdSleepMilliseconds(500);
      }
    }
    
    /*
     * Application entry point.
     */
    int main(void) {
    
      /*
       * System initializations.
       * - HAL initialization, this also initializes the configured device drivers
       *   and performs the board-specific initializations.
       * - Kernel initialization, the main() function becomes a thread and the
       *   RTOS is active.
       */
      halInit();
      chSysInit();
    
      /*
       * Activates the serial driver 2 using the driver default configuration.
       * PA2(TX) and PA3(RX) are routed to USART2.
       */
      sdStart(&SD2, NULL); //SD2,代表UART2
      palSetPadMode(GPIOA, 2, PAL_MODE_ALTERNATE(7)); //UART TX
      palSetPadMode(GPIOA, 3, PAL_MODE_ALTERNATE(7)); //UART RX
    
      /*
       * Creates the example thread. 创建线程
       */
      chThdCreateStatic(waThread1, sizeof(waThread1), NORMALPRIO, Thread1, NULL);
    
      /*
       * Normal main() thread activity, in this demo it does nothing except
       * sleeping in a loop and check the button state.
       */
      while (true) {
        if (palReadPad(GPIOA, GPIOA_BUTTON))
          TestThread(&SD2);
        chThdSleepMilliseconds(500);
      }
    }

    使用烧写工具烧写。效果是串口不断打印TestThread中的信息,LED不断闪烁

  • 相关阅读:
    被刷登录接口
    移动端布局方案
    容易遗忘的Javascript点
    java 笔记02
    java 笔记01
    C# 日常整理
    reac-native 0.61开发环境
    DOS命令收集
    vue整理日常。
    php7.1+apache2.4.x+mysql5.7安装配置(目前windows)
  • 原文地址:https://www.cnblogs.com/zhangxuechao/p/11709512.html
Copyright © 2011-2022 走看看