分享到plurk 分享到twitter 分享到facebook

版本 fb6990520c003737dd1af980dcc60247bd4854aa

embedded/Lab35

Changes from fb6990520c003737dd1af980dcc60247bd4854aa to current

---
title: Lab35: STM32F429
toc: no
...

預期目標
------------
* 接觸 `STM32F429i Discovery</embedded/STM32F429>`_ 硬體並學習相關軟體開發
* 接觸 [STM32F429i Discovery](/embedded/STM32F429) 硬體並學習相關軟體開發
* 學習 OpenOCD, gdb 等工具
* 學習硬體週邊控制

STM32F429 Discovery
-------------------
* `軟硬體資源彙整</embedded/STM32F429>`_
* `環境設定<https://stm32f429.hackpad.com/NOTE-WbiooOfkaoR>`_ (Hackpad)
* `Remote GDB 使用<https://stm32f429.hackpad.com/GDB-3KbCVTstWZj>`_ (Hackpad)
* [軟硬體資源彙整](/embedded/STM32F429)
* [開發工具設定 ](http://www.slideshare.net/ssuser2b0431/stm32-develop-tool-introduction)
* [環境設定](https://stm32f429.hackpad.com/NOTE-WbiooOfkaoR) (Hackpad)
* [Remote GDB 使用](https://stm32f429.hackpad.com/GDB-3KbCVTstWZj) (Hackpad)

USB Serial 接法
---------------------
.. image:: http://elinux.org/images/d/d3/RPI_Serial.png
![](http://elinux.org/images/d/d3/RPI_Serial.png)
* PL2303
  - Black: Ground
  - Green: Receive
  - White: Transmit

* FTDI 
  - Black: Ground
  - Yellow: Receive
  - Orange: Transmit

交通號誌 + 行車模擬系統
--------------------------------------
* 參閱 `Hackpad<https://system2014.hackpad.com/Traffic-Simulation-Dlv7svxemEy>`_
* 參閱 [Hackpad](https://system2014.hackpad.com/Traffic-Simulation-Dlv7svxemEy)

.. code-block:: prettyprint

    git clone https://github.com/embedded2014/freertos-stm32
    cd freertos-stm32 && make
    make flash || make openocd_flash

STM32F4 開發板介紹
-------------------
* `一起來認識 STM32F4 開發套件 (1)<http://www.rs-online.com/designspark/electronics/chn/blog/chi-blog-stm32f4%281%29>`_
* `一起來認識 STM32F4 開發套件 (2)<http://www.rs-online.com/designspark/electronics/eng/blog/stm32f4%282%29>`_
* `一起來認識 STM32F4 開發套件 (3)<http://www.rs-online.com/designspark/electronics/eng/blog/stm32f4%283%29>`_
* `懶人包簡報版本 <http://www.slideshare.net/ssuser2b0431/stm32-develop-tool-introduction>`_
* [一起來認識 STM32F4 開發套件 (1)](http://www.rs-online.com/designspark/electronics/chn/blog/chi-blog-stm32f4%281%29)
* [一起來認識 STM32F4 開發套件 (2)](http://www.rs-online.com/designspark/electronics/eng/blog/stm32f4%282%29)
* [一起來認識 STM32F4 開發套件 (3)](http://www.rs-online.com/designspark/electronics/eng/blog/stm32f4%283%29)

作業要求 (僅供參考,可自行替換)
---------------------------------------------
* 將 `Lab 31: ARM Environment<https://embedded2014.hackpad.com/2014q3-Week-1-mQLneatLPcT>`_, `Lab 32: QEMU + FreeRTOS</embedded/Lab32>`_, `Lab 33: GDB + FreeRTOS</embedded/Lab33>`_ 等開發成果整合到 `FreeRTOS-stm32<https://github.com/embedded2014/freertos-stm32>`_
  - 跟之前作業一樣,記得先 fork `FreeRTOS-stm32<https://github.com/embedded2014/freertos-stm32>`_
* 將 [Lab 31: ARM Environment](https://embedded2014.hackpad.com/2014q3-Week-1-mQLneatLPcT), [Lab 32: QEMU + FreeRTOS](/embedded/Lab32), [Lab 33: GDB + FreeRTOS](/embedded/Lab33) 等開發成果整合到 [FreeRTOS-stm32](https://github.com/embedded2014/freertos-stm32)
  - 跟之前作業一樣,記得先 fork [FreeRTOS-stm32](https://github.com/embedded2014/freertos-stm32)
  - GIT commit 應該一次加上一個功能或者主要修改,不要將不相關的修改,混合到同一個 Git commit!
    * 請詳閱 `5 Useful Tips For A Better Commit Message<http://robots.thoughtbot.com/5-useful-tips-for-a-better-commit-message>`_
    * 請詳閱 [5 Useful Tips For A Better Commit Message](http://robots.thoughtbot.com/5-useful-tips-for-a-better-commit-message)

  - 提示: 需要先設定 USART1,讓 shell 得以在 serial 環境中使用
  - 提示: 可以自行實做簡易的 shell,或者從稍早的程式碼移植並整合

* (加分) 修改為你期望的遊戲

繳交作業
------------
* 截止日期:
   - Oct 25, 2014 (含) 之前
   - Nov 1, 2014 (含) 之前

* 更新作業提案到共筆網站: `Lab 35 / 作業共筆<https://embedded2014.hackpad.com/2014q3-Week-5-L1ktrkrtBNa>`_,需要標注自己的 ID
* 更新作業提案到共筆網站: [Lab 35 / 作業共筆](https://embedded2014.hackpad.com/2014q3-Week-5-L1ktrkrtBNa),需要標注自己的 ID
   - 將符合作業提案的程式碼,提交到自行 fork 的 repository