มาขอทำการ แนะนำผู้เริ่มต้นใหม่ STM32F4 discovery โดยkeil บทที่1

  • 22 Replies
  • 11546 Views
แนะนำผู้เริ่มต้นใหม่ STM32F4 discovery ด้วย keil ครับ  สำหรับมือใหม่ 32 bit
แต่ว่าท่านต้องมีพื้นฐาน หรือเคยใช้ หรือจะต้องศึกษา การใช้ keil ให้เป็นก่อน ครับ
ถ้าไม่เคยใช้ ให้หาอ่านได้ตามเว็ปต่างๆ หรือของทาง keil เอง ก็มีเอกสารการใช้
IDE และ Complier     ซึ่งตรงนี้จะแนะนำในตัวของ Code program เป็นหลัก

หาอ่านได้ตรงนี้เว็ปอ้างอิง
http://tentuts.meritox.com/2012/05/how-to-use-keil-uvision-4-ide-project.html
http://www.keil.com/support/man/docs/uv4/
http://www.datasheetarchive.com/Keil%20uVision%204%20user%20manual-datasheet.html
http://www.cs.uregina.ca/Links/class-info/301/ARM/lecture.html
http://vshamu.wordpress.com/2011/03/25/micrcontroller-programming-using-c-with-keil-ide/


อันดับแรกเมื่อต้องการสร้างโปรเจคใหม่  ให้ท่านสร้าง Folder ที่จะเก็บขึ้นมาเพื่อทำการ
เก็บตัวโปรเจคใหม่ไว้   ใน Folder จะมีการเก็บ File เบื้องต้น 2 ตัว ที่จะต้องไปก๊อปปี้
มาจาก keil เพื่อให้ง่ายและตัดปัญหาการหา file ไม่เจอในการ Compiler ของ Keil
เมื่อมีการก็อปปี้ Folder ไปที่อื่น 
File ทั้ง2 นี้มีดังนี้

1      system_stm32f4.c  ไปก็อปปี้ได้จาก   C:\Keil\ARM\Startup\ST\STM32F4xx    เข้าตาม Floder
2      stm32f4xx.h           ไปก็อปปี้ได้จาก   C:\Keil\ARM\INC\ST\STM32F4xx          เข้าตาม Floder

เตรียม File ไว้ใน Floder ให้พร้อม เมื่อครบแล้วเตรียมการสร้างโปรเจคใหม่ได้เลยครับ

รูปแบบนี้ใช้ได้กับ  MCU ทั้งหมดที่ keil รู้จัก    
 
system_stm32f4.c  เป็นcode เกี่ยวกับการจัดการ Clock และฐานเวลาเบื้องต้น  ที่ทาง Keil ให้มา
stm32f4xx.h     เป็นพารามิเตอร์ต่างๆ ที่อ้างอิง Register ของ MCU  แอดไว้ดูและดึงมาใช้งานจะสะดวก

*

Offline JENG

  • *****
  • 808
  • รู้ทุกเรื่องเว้นเรื่องจริง
    • View Profile
ติดตามครับ ยังไม่เคยเล่น stm มาก่อน แต่อ่านดูแล้วน่าสนใจ  :)
สามารถติดตาม electoday ได้ที่

Facebook
www.facebook.com/groups/coopmicro

Google+
https://plus.google.com/communities/103482067769375459277

☺☺☺ความรู้ และความฉลาด ไม่ใช่สิ่งเดียวกัน จะมีประโยชน์อะไร ถ้าฉลาดแต่อยู่ในกะลา☺☺☺

 ;D
ขอบคุณครับ ลองด้วย

ขอบคุณครับ จะตั้งใจเรียน ว่าจะเริ่ม stm ยังไม่ได้เริ่มซักที ติดตามครับ
Make it Simple But it Work

ขอลองด้วยคน
ขอบคุณครับ

*

Offline tha

  • *****
  • 886
    • View Profile
บอร์ด F4 ผมเอาไปลง hex code ที่โหลดมาจากเน็ตทำเป็น mp3 ฟังไปซะแล้ว

ปัญหาการเรียนรู้ปัจจุบัน  ผมรู้สึกว่าเราต้องไปอาศัย LIB ของทาง ST มากเกินไป เวลาทำอะไรยุ่งยาก สำหรับคนจะเริ่มต้นใหม่
แต่ถ้าคนเป็นแล้ว อาจจะบอกว่าง่ายๆ  ดึงๆมาใช้ปรับเล็กน้อย ก็ใช้ได้  แต่ผมคิดว่า  กว่าท่านจะได้และพูดว่ามันง่าย ผมว่ามัน
ก็ใช้เวลานานมาก แต่ท่านลืมช่วงเวลาเรียนรู้ไป  หรือทาง ST อาจจะเจาะกลุ่มฐานคนใช้งานที่ไม่จำเป็นเข้าถึงฮาดแวร์มากเกินไป
เมื่อเป็นดังนี้   กลายเป็นว่าจะศึกษาMCU ค่ายไหน  ก็จะต้องไปศึกษา แบบฟรอม ของภาษาทาง LIB ของค่ายนั้นๆ มันยุ่งยาก
ซึ่ง  MCU ของแต่ละค่าย ไม่ได้หนีกันมาก   ต่างกันแค่ Speed และ Module ที่เพิ่มเช่น ADC, I2C, DAC เป็นต้นครับ
แต่พื้นฐานของMCU ผมว่าหมือนกัน มี Timer/Counter ,Uart , GPIO,  ดังนั้น รูปแบบภาษาซี + เซ็ทค่าทางรีจีสเตอร์
ทุกค่ายจะเหมือนกัน  สิ่งที่เรียนรู้เพิ่มคือชื่อของ รีจิสเตอร์นั้นๆ ที่จะใช้ การเปิดปิด โมดูลนั้นๆ  และการทำงานของตัวโมดูล
จะย้ายค่าย  ผมว่าสบายมันไปได้เร็ว แค่ชื่อ และการเซ็ทที่ต่างการ แต่แบบฟรอมการทำงานของโมดูลไม่ต่างกัน  ถ้าเป็นใช้
LIB เวลาเปลี่ยนค่ายที   ก็ต้องไปศึกษาใหม่แบบฟรอมภาษาของค่ายนั้นๆ (ภาษาซีฐาน+แบบฟรอมภาษาLIBค่ายนั้น+รีจิสเตอร์ )
ถ้าเราไม่ใช้ LIB  จะได้ (ภาษาซีฐาน+รีจิสเตอร์)ที่ต้องเรียนรู้   และทำให้คนเรียนรู้ว่ากำลังทำอะไรกับตัว รีจิสเตอร์ เพื่อให้ทำงาน

อีกอย่างเวลาค้นหาคำสั่งจะเจอแต่รูปแบบภาษาใช้ LIB  มากมาย  ค้นหาเป็นแบบคำสั่งรีจิสเตอร์มันมีน้อย ตัวอย่างน้อยมาก
ผมจึงค่อยๆทดลองคำสั่ง และตัวอย่างที่ได้จากโลกออนไลน์  มาเป็นบล็อกโมดูล เพื่อที่จะเป็นตัวอย่างให้คนที่ต้องการศึกษา
ดูรูปแบบ และเอาไปดัดแปลงใช้งานได้  ทำให้ง่าย เข้าใจได้ไม่ยาก แต่ก็ต้องมีพื้นเขียน MCU มาบ้าง มาแบบเป็น 0 เลยไม่ได้

มันอาจจะดู  รกตา ในการเขียนหัวข้อนึง ต่อกระทู้นึงก็ต้องกราบขอโทษไว้ ณ ที่นี้ด้วยครับ  แต่ผมต้องการจะแบ่งเป็นกลุ่ม
เวลาจะอัปเดทในเรื่องนั้นๆ จะได้ไปเข้ากลุ่มนั้นได้เลย เพราะถ้าจับยำทีเดียว ไว้หลายๆหัวเรื่อง เวลาค้นหาในกูเกิล อาจจะไม่เจอ
และบางคนต้องการแค่อยากรู้บางเรื่อง จะได้เร็วในการค้นหา ในเรื่องที่ต้องการ

อาจจะไม่ใช่ตัวอย่างที่ดี  ถูกหลักการโปรแกรมหมด แต่ต้องการแบ่งปันคนที่ต้องการศึกษา เห็นข้อด้อยก็เอาไปปรับใช้ให้ดีขึ้นครับ
ต้องคลานก่อนเดิน  และก็เดินให้เป็นก่อนจะไปวิ่งแข่งได้ครับ 

จากการเรียนรู้ที่ผ่านมา
TI                LM3S8962    ข้อมูลหาง่าย ตัวอย่างเยอะ  ตัวอุ่นๆ เวลาทำงาน   ราคาตามแบนด์   โปร์ดัก(USA)
ST               STM32F10XVBT6  ข้อมูลหาง่าย  ตัวอย่างเยอะ  ราคาถูก คุณภาพดี IC เย็น (เทียบค่ายกัน) โปร์ดัก (France)
ST               STM32F407VG     ข้อมูลหาปานกลาง  ตัวอย่างดูจาก LIB ST เอา คุณภาพดี IC เย็น (เทียบค่ายกัน) โปร์ดัก (France)
Freescale     MK60DN512  ข้อมูลหาปานกลาง  ตัวอย่างประปาย  IC ตัวอุ่นๆ เวลาทำงาน   โปร์ดัก(USA)
Fujitsu         MB9B504N    ข้อมูลหาได้น้อย  ตัวอย่างประปาย อาศัย Example (Es)  IC ตัวอุ่นๆ เวลาทำงาน   โปร์ดัก(Japan) 
Infineon       XMC4500      ข้อมูลหายากต้องดูจากโค๊ดตัวอย่างในการศึกษา ออกมาไม่นาน ใช้ก่อน เป็นก่อน  โปร์ดัก(Germany)

*

Offline superkai

  • **
  • 93
  • You are what you eat.
    • View Profile