ค้นหาคู่มือ ARM ARM, ARM อ้างอิงทางสถาปัตยกรรม ครอบคลุมกระบวนการบูตสถาปัตยกรรมแอสเซมบลี (ARM, thumb and thumb2) ทุกอย่าง ARM ARM เป็นแบบทั่วไปสำหรับแกนที่เฉพาะเจาะจงที่คุณสนใจจะมี TRM, คู่มืออ้างอิงทางเทคนิค เอกสารทั้งหมดนี้มีให้บริการฟรีจากเว็บไซต์ของ ARM TRM จะได้รับรายละเอียดเฉพาะสำหรับแกนนั้นโดยเฉพาะอย่างยิ่งถ้าคุณต้องการใช้ไมโครคอนโทรลเลอร์ที่ใช้ Cortex-M3 รุ่นใหม่ลำดับการบูตหรือสมมติว่าตารางการยกเว้นนั้นแตกต่างจาก ARM แบบดั้งเดิมและคุณต้องการ TRM สำหรับ Cortex-M3 เพื่อค้นหาข้อมูล
หากคุณจบด้วยแขนที่มีแคชหรือ mmu คุณอาจต้องรับ TRM สำหรับสิ่งนั้นจากเว็บไซต์ของ ARM คุณจำเป็นต้องรู้แกนที่เฉพาะเจาะจงที่สร้างขึ้นในชิปผู้ขายเฉพาะเช่น PL310 r2p0 สามารถ / อาจแตกต่างจาก r3p0 ผู้ขายควรมีข้อมูลนี้และอาจมีลิงก์ไปยังหรืออาจ arm arm โดยตรง ฉันคิดว่า ARM ชอบวิธีนั้น
เท่าที่ C ไปมันก็แค่ C ไม่มีอะไรพิเศษ ARM ได้รับการสนับสนุนจากผู้รวบรวมหลัก gcc, llvm, Keil (ตอนนี้เป็นเจ้าของโดย ARM), IAR, เนินเขาเขียวขจี ฯลฯ Microsoft แม้จะมี / เคย (จะหลีกเลี่ยง มันแม้ว่า) ไม่มีอะไรพิเศษสำหรับ ARM แต่คุณจำเป็นต้องรู้ถึงความแตกต่างของคอมไพเลอร์และการลิงก์ของมัน Code Sourcery เป็นวิธีที่จะดำเนินการในวันนี้สำหรับคอมไพเลอร์ ARM ที่พร้อมใช้งาน gcc รุ่น LITE สามารถดาวน์โหลดและใช้งานได้ฟรีและมีการจ่ายเงินสำหรับรุ่นหากคุณต้องการการสนับสนุน (สนับสนุน gcc arm ฟรีที่ google.com มากกว่า คุณมีเวลาอ่าน) ก่อนหน้าที่ emdebian รหัส sourcery เป็นสถานที่ที่จะไปสำหรับบางสิ่ง yagarto และ devkitarm และ winarm ทั้งหมดมี / มีพร้อมที่จะใช้โซลูชั่น (สำหรับฝังตัวและไม่จำเป็นต้อง linux, Code Sourcery หรือ emdebian ถ้าคุณต้องการข้ามรวบรวมสำหรับ linux)
ฉันมีบางบล็อกที่ไม่ใช่บล็อกจริงๆ แต่มีที่สำหรับวางโปรแกรมตัวอย่างและข้อมูลเกี่ยวกับวิธีนำไมโครคอนโทรลเลอร์ที่ใช้ ARM มาใช้งาน บางอันเช่น C, บล็อกเก่า ๆ ที่ฉันแสดงให้เห็นว่าจะสร้างคอมไพเลอร์ไขว้แบบ gcc ของคุณเองได้อย่างไร ฉันอาจมีข้อมูล llvm ด้วยเช่นกัน (thumbulator มีตัวอย่างสองสามตัวอย่างที่ไม่ได้จัดทำเป็นเอกสาร) จากกล่อง llvm สามารถใช้เป็นคอมไพเลอร์ไขว้สำหรับแพลตฟอร์มจำนวนหนึ่งคุณไม่ต้องสร้างมันเพื่อเป้าหมายเช่น gcc และการสร้างรหัสของ llvm นั้นขึ้นอยู่กับ gcc 4.x (gcc 4.x นั้นไม่จำเป็นต้องดีกว่า gcc 3.x และ gcc หรือ llvm นั้นไม่ดีเท่ากับค่าใช้จ่ายแพงอื่น ๆ สำหรับคอมไพเลอร์ของ ARM เอง)
http://stm32stuff.blogspot.com/
จากตรงนั้นคุณสามารถคลิกที่โปรไฟล์ของฉันและค้นหาข้อมูลที่คล้ายกันสำหรับ lpc, lmi (luminary micro, ส่วน stellaris, ซึ่งเป็นเจ้าของโดย ti) sam7 ฉันไม่ได้เป็นแฟนของครอบครัว lpc มากเท่าไร mbed2 ก็โอเคนอกเหนือจากไฟ LED สีน้ำเงินที่เจ็บปวด ตอนนี้มีบอร์ดราคา $ 12 stm32 บางตัวค้นพบบางอย่างพร้อมที่จะเล่นนอกกรอบ Coridium มีกระดานที่ตรงกับรอยเท้าของอาร์ดิโนเช่นเดียวกับเมเปิ้ลสามารถรับหนึ่งหรือทั้งสองอย่างที่ sparkfun (สารพัดที่ sparkfun มากมาย) หากคุณกำลังมองหาสิ่งที่มีประสิทธิภาพยิ่งกว่าบีเกิ้ลบอร์ดก็เจ็บปวดสำหรับการขาดอินเทอร์เฟซเวอร์ชั่นภาษาจีนในราคาเดียวกันคือ / ดีกว่า (ปรากฏในหนึ่งหรือสองสัปดาห์ แต่ไม่มีข้อมูลการติดตามใด ๆ ) มีอีเธอร์เน็ตและ พอร์ตอนุกรมที่ไม่เมา ฉันชอบเหยี่ยว แต่ฉันคิดว่าพวกเขาไม่สามารถทำตามคำแนะนำการออกแบบและพวกเขาอาจมีปัญหากับ omap ชอบ openrd จาก folks คำนวณปลั๊ก แต่เกลียดรุ่นปลั๊ก openrd มีพลัง sata และตัวเชื่อมต่อข้อมูลบนบอร์ดเพียงเสียบฮาร์ดไดรฟ์บอร์ดอื่น ๆ ในคลาสนี้จะบังคับให้คุณใช้แฟลชที่ใช้แฟลช (อ่าน: ช้ามาก) แกนมาร์เวลกำลังวิ่งวนรอบ ti omaps ในขณะนี้
หรือลองใช้ thumbulator (github) thumb ของฉันตั้งฟรี simulator กับเขา แต่ จำกัด ไว้ที่ thumb ไม่มีแขน (คุณสามารถนำโค้ดของคุณจากมันไปยัง stm32 บอร์ดได้เช่นเดียวกับ $ 12) armulator ที่อยู่ใน gdb และที่อื่น ๆ อาจจะเจ็บปวดมากกว่าการใช้งาน แต่รองรับแขนและนิ้วหัวแม่มือและ qemu นั้นใช้งานง่ายถ้าคุณไม่สนใจที่จะเห็นว่าโค้ดของคุณทำอะไรอื่นนอกจากเอาท์พุทพอร์ตอนุกรม qemu รองรับแขนนิ้วหัวแม่มือและนิ้วหัวแม่มือ 2 ฉันคิดว่า stellaris board หรือสองอันนั้นเป็นแบบจำลองที่นั่น
หากคุณรู้จักแอสเซมเบลอร์ AVR ซึ่งไม่ดีเท่าชุดคำสั่ง (ดีกว่าบางแย่กว่าคนอื่น) คุณไม่ควรมีปัญหากับ ARM หรือหัวแม่มือทำความสะอาดเล็กน้อยง่ายกว่าเล็กน้อย ในทำนองเดียวกันถ้าคุณทำ C (ฝังตัวนอกกล่องทราย) ด้วย AVR แล้ว ARM จะเหมือนหรือง่ายกว่า คุณสามารถไปกับ mbed หรือ maple ที่พวกเขามี sandbox ที่ควรทำให้ง่ายต่อการเริ่มต้นและจากนั้นถ้าคุณต้องการออกไปด้วยตัวคุณเองคุณสามารถทำได้โดยไม่มีปัญหามาก mbed คุณเพียงแค่คัดลอก. bin ไปยังแฟลชไดรฟ์เสมือนเมเปิ้ลที่คุณใช้ตัวโหลดหรือ dfu-util หรือสิ่งที่ฉันจำไม่ได้