ไมโครโปรเซสเซอร์เริ่มต้นที่ดีคืออะไรในการเรียนรู้การประกอบ


19

ดังนั้นฉันต้องการที่จะเรียนรู้การชุมนุมครั้งแรกใน MP จากนั้นย้ายไปที่ C (เนื่องจากดูเหมือนว่าพวกเขาส่วนใหญ่ใช้)

ฉันต้องการเขียนโปรแกรมแบบฝังตัวฉันรักสิ่ง C ระดับต่ำจริงๆ (Kernels / Modules for Linux เป็นสิ่งที่ฉันได้ทำไปแล้ว) แต่ฉันชอบความคิดที่จะเขียนโปรแกรมในระดับต่ำกว่านั้น (Microcontrollers / ไมโคร)

ฉันรู้เกี่ยวกับ Arduino และนั่นยอดเยี่ยมและทั้งหมด แต่ฉันไม่สามารถหาแหล่งข้อมูลจำนวนมากเพื่อใช้ประกอบกับพวกเขาได้ Atmel AVRs ดูเหมือนจะเป็นที่นิยมมาก (และราคาถูก) แต่เมื่อพูดถึงส่วนฮาร์ดแวร์ที่แท้จริง (เชื่อมต่อพวกเขาบนเขียงหั่นขนม ฯลฯ ) ฉันไม่พบข้อมูลมากนัก

คำแนะนำ / ข้อมูลหรือแหล่งข้อมูลใด ๆ ที่คุณ / gals รู้กรุณาแจ้งให้เราทราบ

แก้ไข: อีกอย่าง: ดูเหมือนว่าหนังสือไมโครโปรเซสเซอร์ทั้งหมดที่ฉันอ่าน (โดยปกติคือ AVR) พูดคุยเกี่ยวกับไมโครโปรเซสเซอร์และเขียนโปรแกรม แต่ฉันยังไม่เห็นหนังสือที่พูดถึงการติดตั้งส่วนประกอบทั้งหมดด้วยตัวคุณเอง (ไมโครโปรเซสเซอร์หน่วยความจำพลังงาน ฯลฯ ) ถ้าฉันสามารถหาบางอย่างที่ทำให้ฉันผ่านที่ฉันจะทำธุรกิจ (ฉันต้องการเรียนรู้ตั้งแต่ต้น) ไม่ต้องพูดถึงฉันไม่รู้ว่าคุณจะสื่อสารกันอย่างไร


3
ฉันเกลียดที่จะส่งคุณที่อื่น ๆ แต่ถ้าคุณกำลังสนใจใน AVRs คุณจำเป็นต้องรู้เกี่ยวกับAVRfreaks.net
Kevin Vermeer

Ya Im เอนไปทาง AVR ... ส่วนใหญ่เป็นเพราะพวกเขามีข้อมูลมากมายเกี่ยวกับพวกเขาและพวกเขามีราคาถูกกว่า TI-MPS430 ...

2
AVR เป็นที่นิยมของมือสมัครเล่น แต่ฉันไม่แน่ใจว่าคุณได้รับข้อมูลค่าใช้จ่ายของคุณที่ไหน ทั้งครอบครัวมีข้อเสนอบางอย่างที่น้อยกว่า 1 USD และอื่น ๆ ผลัก 20 USD
Kevin Vermeer

ดี ..... เมื่อฉันดูที่ MPS430 ดูเหมือนว่าซอฟต์แวร์ (debuggers และอื่น ๆ ) มีราคาแพงเล็กน้อยเมื่อเพิ่มลงในบอร์ดการพัฒนา

1
คำแนะนำของฉันคือไม่รับ MSP430 หากคุณเป็นมือใหม่ เครื่องมืออย่างเป็นทางการนั้นดี แต่การสนับสนุนฟรีคุณจะพบว่าออนไลน์ไม่ตรงกับ PIC / AVR
Toby Jaffey

คำตอบ:


14

ฉันเรียนที่วิทยาลัย 68HC11 พวกมันง่ายมากที่จะทำงานกับ แต่ไมโครคอนโทรลเลอร์ที่ใช้พลังงานต่ำส่วนใหญ่จะมีความคล้ายคลึงกัน (AVR, 8051, PIC, MSP430) สิ่งที่ใหญ่ที่สุดที่จะเพิ่มความซับซ้อนให้กับการเขียนโปรแกรม ASM สำหรับไมโครคอนโทรลเลอร์เป็นจำนวนและประเภทของหน่วยความจำที่รองรับอยู่โหมด คุณควรหลีกเลี่ยงอุปกรณ์ที่ซับซ้อนมากขึ้นในตอนแรกเช่นโปรเซสเซอร์ ARM ระดับสูงขึ้น

ฉันอาจแนะนำ MSP430 เป็นจุดเริ่มต้นที่ดี อาจจะเขียนโปรแกรมใน C และเรียนรู้โดยแทนที่ฟังก์ชั่นต่าง ๆ ด้วยชุดประกอบแบบอินไลน์ เริ่มง่าย ๆ x + y = z เป็นต้น

หลังจากที่คุณได้แทนที่ฟังก์ชั่นหรืออัลกอริทึมด้วยชุดประกอบให้เปรียบเทียบและความคมชัดว่าคุณเขียนโค้ดอย่างไรและสร้างคอมไพเลอร์ C อย่างไร นี่อาจเป็นหนึ่งในวิธีที่ดีกว่าในการเรียนรู้การชุมนุมในความคิดของฉันและในเวลาเดียวกันเรียนรู้ว่าคอมไพเลอร์ทำงานอย่างไรซึ่งมีคุณค่าอย่างเหลือเชื่อในฐานะโปรแกรมเมอร์ฝังตัว เพียงให้แน่ใจว่าคุณปิดการเพิ่มประสิทธิภาพในคอมไพเลอร์ C ในตอนแรกหรือคุณอาจจะสับสนมากโดยรหัสที่สร้างขึ้นของคอมไพเลอร์ เปิดการปรับให้เหมาะสมแล้วค่อยๆบันทึกสิ่งที่คอมไพเลอร์ทำ

RISC กับ CISC

RISC หมายถึง 'Reduced Instruction Set Computing' ไม่ได้อ้างถึงชุดคำสั่งเฉพาะ แต่เป็นเพียงกลยุทธ์การออกแบบที่บอกว่า CPU มีชุดคำสั่งน้อยที่สุด คำแนะนำเล็กน้อยที่แต่ละคนทำสิ่งพื้นฐาน ไม่มีคำจำกัดความด้านเทคนิคอย่างเข้มงวดเกี่ยวกับสิ่งที่ 'เป็น RISC' ในทางกลับกันสถาปัตยกรรม CISC มีคำแนะนำมากมาย แต่แต่ละคน 'ทำมากกว่า'

ข้อได้เปรียบของ RISC คือการออกแบบซีพียูของคุณต้องการทรานซิสเตอร์น้อยลงซึ่งหมายถึงการใช้พลังงานน้อยลง (ใหญ่สำหรับไมโครคอนโทรลเลอร์) ราคาถูกลงและราคานาฬิกาที่สูงขึ้นซึ่งนำไปสู่ประสิทธิภาพที่สูงขึ้น การใช้พลังงานที่ต่ำกว่าและการผลิตที่ถูกกว่านั้นเป็นเรื่องจริงประสิทธิภาพที่มากขึ้นนั้นไม่ได้บรรลุเป้าหมายตามการปรับปรุงการออกแบบในสถาปัตยกรรม CISC

เกือบทุกคอร์ CPU เป็น RISC หรือการออกแบบ 'พื้นกลาง' วันนี้ แม้จะมีสถาปัตยกรรม CISC ที่มีชื่อเสียงที่สุด (หรือเสียชื่อ), x86 ซีพียู x86 ที่ทันสมัยอยู่ภายใน RISC เหมือนแกนประมวลผลที่ติดตั้งตัวถอดรหัสที่ส่วนหน้าซึ่งแบ่งคำสั่ง x86 เป็นคำสั่ง RISC หลายตัวเช่นคำแนะนำ ฉันคิดว่า Intel เรียกสิ่งเหล่านี้ว่า 'micro-ops'

สำหรับเรื่องที่ (RISC vs CISC) นั้นง่ายต่อการเรียนรู้ในการชุมนุมฉันคิดว่ามันเป็นการโยนขึ้น การทำบางสิ่งบางอย่างกับชุดคำสั่ง RISC โดยทั่วไปต้องใช้ชุดประกอบมากกว่าบรรทัดในการทำสิ่งเดียวกันกับชุดคำสั่ง CISC ในทางกลับกันชุดคำสั่ง CISC นั้นซับซ้อนกว่าการเรียนรู้เนื่องจากมีจำนวนคำสั่งมากกว่า

เหตุผลส่วนใหญ่ CISC ได้รับชื่อที่ไม่ดีคือ x86 นั้นเป็นตัวอย่างที่พบบ่อยที่สุดและเป็นระเบียบที่จะทำงานด้วย ฉันคิดว่าส่วนใหญ่เป็นผลมาจากชุดคำสั่ง x86 นั้นเก่ามากและมีการขยายครึ่งโหลหรือมากกว่านั้นในขณะที่รักษาความเข้ากันได้แบบย้อนหลัง แม้แต่ i7 4.5Ghz core i7 ของคุณก็สามารถทำงานได้ในโหมด 286 (และทำงานตอนบู๊ต)

สำหรับ ARM เป็นสถาปัตยกรรม RISC ฉันคิดว่ามันเป็นที่ถกเถียงกันในระดับปานกลาง เป็นสถาปัตยกรรมโหลดแน่นอน ชุดคำสั่งพื้นฐานคือ RISC เช่นกัน แต่ในการปรับปรุงล่าสุดชุดคำสั่งได้เพิ่มขึ้นเล็กน้อยจนถึงจุดที่ฉันคิดว่ามันเป็นจุดกึ่งกลางระหว่าง RISC และ CISC มากขึ้น ชุดคำสั่งแบบใช้นิ้วหัวแม่มือนั้นเป็นชุดคำสั่ง 'RISCish' ที่สุดของชุด ARM


@ Mark - ARM เป็นหน่วยประมวลผล RISC เช่นกันชุดคำสั่งไม่เลว จริงๆแล้วมันได้รับการออกแบบมาค่อนข้างดี มีคำแนะนำบางอย่างสำหรับ userspace vs. kernelspace differentiation และ complexities อื่น ๆ แต่สิ่งเหล่านี้สามารถถูกเพิกเฉยได้ในขณะที่คุณกำลังเริ่มต้น
Kevin Vermeer

1
@reemrevnivek ฉันพยายามบังคับเขาให้ห่างจากความซับซ้อนในการจัดการกับโหมดตัวประมวลผลและ MMU หลายครั้งในขณะที่เขาเริ่มเข้าสู่ ASM ซึ่งทำไมฉันถึงพูดถึง ARM end ที่สูงขึ้น การเริ่มต้นและการตั้งค่า ARM SoCs ระดับสูงกว่านั้นมีความซับซ้อนมากกว่าสิ่งอื่นเช่น AVR / PIC / MSP430
มาร์ค

RISC? ฉันไม่แน่ใจว่าฉันเข้าใจความแตกต่างระหว่างสิ่งนั้นกับสิ่งอื่นใด ... ใส่ใจที่จะอธิบาย? RISC เป็นไมโครคอนโทรลเลอร์ส่วนใหญ่ไม่ใช่หรือ มันหมายถึงชุดคำสั่งที่ถูกต้องน้อยลงหรือไม่

1
@sauron ฉันได้เพิ่มคำตอบของฉันอีกครั้ง: RISC กับ CISC
Mark

AVR / PICS มักเป็น RISC หรือ CISC หรือเปล่า

8

ฉันคิดว่าไมโครคอนโทรลเลอร์ PIC 8 บิตเป็นตัวเลือกที่ดีที่สุดเนื่องจากจำนวนคำสั่งลดลง

ผลข้างเคียงของจำนวนคำสั่งที่ลดลงคือคุณต้องบูรณาการล้อเมื่อเทียบกับไมโครคอนโทรลเลอร์อื่นที่มีคำแนะนำเพิ่มเติม

แต่หลังจากเรียนรู้ด้วย PIC คุณสามารถย้ายไปยังไมโครคอนโทรลเลอร์อื่นและดูว่าอะไรที่เหมาะสำหรับคุณ


ฉันจะไม่เห็นด้วยอย่างสิ้นเชิงเพราะนี่คือสิ่งที่ฉันกำลังสำรวจอยู่ในขณะนี้ แต่ 8, 16, และ 32 บิตแกนมีกลยุทธ์ที่แตกต่างกันโดยสิ้นเชิง
ผู้เล่น Grady ผู้เล่น

7

คล้ายกับคำแนะนำของ Mark ในรุ่น 68HC11 ชุดคำสั่งของตระกูลFreescale 68HCS08 นั้นเป็นรุ่นที่บางลงของ Motorola 6809 ซึ่งฉันคิดว่าเป็นหนึ่งในชุดคำสั่ง 8 บิตที่สะอาดที่สุดในขณะนี้ คุณจะได้รับการพัฒนาคณะกรรมการที่มีสวิทช์ไฟ LED, 3 แกน accelerometer และแบบ piezo กริ่งราคา $ 79 ที่นี่


จำนวนการลงทะเบียนที่ลดลงของ S08 นั้นเทียบกับ HC11 สามารถทำให้สิ่งต่าง ๆ ยากขึ้นไปอีกเล็กน้อยเนื่องจากคุณจะต้องเข้าใจว่ากองซ้อนทำอะไรได้มาก (ซึ่งได้รับการสอนในห้องปฏิบัติการของฉันด้วย HC11s ในภายหลัง) 12)) โดยส่วนขยาย AVR นั้นดีมากเพราะคุณมีผู้ลงทะเบียน 32 คนที่เล่นได้ก่อนที่จะกังวลเกี่ยวกับสแต็ก
Nick T

ที่จริงฉันชอบความเรียบง่ายของแอคคูมูเลเตอร์เดี่ยวถึงแม้ว่ามันจะเป็นคอขวด แทนที่จะใช้สแต็กสำหรับตัวแปร temp เริ่มต้นด้วยฉันพบว่าการใช้ตัวแปรเพจโดยตรงขนาด 144 ไบต์นั้นสามารถเข้าถึงได้โดยใช้คำสั่งที่สั้นกว่า (อีก 112 ไบต์ของเพจหน้าที่ใช้สำหรับการลงทะเบียน I / O) การใช้สแต็ก (ซึ่งอนุญาตให้รูทีน reentrant และรูทีนซ้ำ) สามารถเรียนรู้ได้ในภายหลัง
tcrosley

HC (S) 08 ไม่ได้มาจาก HC05 ใช่ไหม
Johan.A

@ Johan.A ใช่คุณพูดถูก HCS08 เป็นรุ่นปรับปรุงของ HC05 ฉันควรจะกล่าวว่า ฉันคิดว่าการสืบทอดมานั้นคล้ายกับ 6800 -> 6801 -> 6805 -> HC (S) 08 ฉันเขียนรหัสประกอบจำนวนมากสำหรับ 6805 ฉันเปรียบเทียบ HCS08 กับ 6809 เพื่อผูกกับความคิดเห็นอื่นอีกครั้ง 68HC11 (ซึ่งประมาณเป็นรุ่นไมโครคอนโทรลเลอร์ของ 6809)
tcrosley

4

ชุดคำสั่ง msp430 เป็นชุดที่ดีสำหรับการเรียนรู้แอสเซมเบลอร์ หลีกเลี่ยง x86 Arm เป็นอีกตัวที่ดี แต่มีคำแนะนำและตัวเลือกมากมายและอาจไม่เหมาะกับชุดคำสั่งแรก Thumb เป็นชุดย่อยของชุดคำสั่งแขนและไม่เลวใน github ฉันมีทั้ง thumb emulator (thumbulator) และ msp430 emulator (ไม่ได้ทดสอบมากเท่า thumb) ซึ่งเป็นหน่วยประมวลผลและหน่วยความจำและอีกเล็กน้อย ดังนั้นคุณสามารถมองเห็นได้ดีว่าเกิดอะไรขึ้น อีกทางเลือกหนึ่งคือ qemu เช่นที่การมองเห็นอยู่ที่นั่น แต่ยากกว่ามากที่จะได้รับเช่นเดียวกับ qemu เช่นวิธีการแก้ปัญหามันใช้เวลาทำงานมากขึ้นก่อนที่คุณจะคิดออกหากคุณมีอะไรทำงาน
goto mspgcc4.sf.net เพื่อสร้าง toolchain และ / หรือ binutils สต็อค (./configure --target = msp430 --prefix = / บางอย่าง) ร่วมกับหุ้น llvm เมื่อคุณพร้อมสำหรับฮาร์ดแวร์บอร์ดพัฒนา msp430 จะมีราคาต่ำกว่า 5 ดอลลาร์ สำหรับเครื่องมือ arm / thumb เพียงแค่รับรุ่น lite จาก codesourcery บอร์ด cortex-m3 (thumb / thumb2) อยู่ที่ประมาณ 12 bucks ในขณะนี้ ฉันจะหลีกเลี่ยง x86 และ avr และอื่น ๆ เป็นชุดคำสั่งแรกคุณจะต้องการเรียนรู้ผู้อื่นให้กลมกลืน ชุดคำสั่ง pic เก่า / ดั้งเดิมเป็นสิ่งที่ควรพิจารณาเช่นกัน คุณสามารถเขียนโปรแกรมจำลองได้ด้วยตัวเองในช่วงบ่ายเพื่อเรียนรู้เกี่ยวกับแอสเซมเบลอร์ ฉันไม่ได้เรียนรู้มันก่อนจำเป็นต้องสอนสิ่งที่น่าสนใจ แต่ในเวลาเดียวกันไม่ได้ปรับขนาดและไม่จำเป็นต้องเป็นตัวแทนของคุณสมบัติทั่วไปที่คุณพบในชุดคำสั่งส่วนใหญ่ msp430 ให้ความรู้สึกของ pdp11 ซึ่งเป็นชุดคำสั่งแรกที่ฉันได้เรียนรู้จริง ๆ ทั้งคู่มีลักษณะโค้งมนส่วนใหญ่มีลักษณะเป็นฉากฉาก ทั้งชุดคำสั่ง msp430 และ microchip pic ได้รับการบันทึกไว้ที่วิกิพีเดียอย่างน้อยก็เพื่ออ้างอิงเพื่อให้ภาพรวมได้รับเอกสารข้อมูล / คู่มือจากผู้จำหน่ายซึ่งจะอธิบายโหมดการลงทะเบียนและการตั้งค่าการบู๊ต / การบู๊ต ฯลฯ


สำหรับแอสเซมเบลอร์คุณเพียงต้องการ binutils อย่างน้อยสำหรับแขน / นิ้วหัวแม่มือหรือ msp430 และคุณสามารถสร้างแอสเซมเบลอร์และลิงเกอร์ได้ หากคุณต้องการคอมไพเลอร์ C ที่คุณสามารถตรวจสอบเอาต์พุตแอสเซมเบลอร์เป็นเครื่องมือการเรียนรู้คุณต้องใช้ mspgcc4 หรือ codesourcery หรือใช้เพียง llvm ทั้งคู่
old_timer

4

คุณแน่ใจหรือไม่ว่าต้องการเรียนรู้การประกอบ คุณพูดทำไม มันค่อนข้างเป็นงานและมีน้อยและน้อย relavent หรือมีประโยชน์ตอนนี้วัน นี่คือจากคนที่เขียนไว้และแม้แต่มือประกอบโปรแกรม (ไม่มีแอสเซมเบลอร์ linker เพียงการ์ดที่มีชุดคำสั่ง)


นี่ไม่ใช่คำตอบจริงๆเท่าความเห็น ฉันยังลังเลที่จะไว้วางใจโปรแกรมเมอร์ C ที่ฝังตัวซึ่งไม่เต็มใจที่จะยั่วยุให้ผ่านการรวมตัวกันของบิตในขณะนี้และเมื่อพยายามที่จะเข้าใจความผิดปกติในพฤติกรรมของโครงการ
Chris Stratton

4

ฉันก็เรียนรู้เรื่อง 68HC11 ที่วิทยาลัยด้วย แต่พวกเขาแนะนำสิ่งนี้กับ MPU / MCU อื่น ๆ ฉันแค่ต้องการชี้ให้เห็นว่าคณะกรรมการพัฒนาที่เราใช้มีโปรแกรมตรวจสอบอยู่ ดังนั้นจากเทอร์มินัลโง่เราสามารถตรวจสอบรหัสและตรวจสอบการลงทะเบียน ... ฉันจะแนะนำเมื่อคุณรู้ว่าตัวประมวลผลใดที่เหมาะกับความต้องการของคุณคุณยังตรวจสอบว่าบอร์ดการพัฒนาใดบ้างที่มีอยู่ในโปรแกรมตรวจสอบ


โปรแกรมตรวจสอบดูเหมือนว่ามันจะเป็นประโยชน์มาก คุณใช้หนังสือเล่มใดเพื่อเรียนรู้สิ่งนี้ ถ้าคุณรังเกียจฉันถาม ....

ฉันก็เคยมีประสบการณ์กับ 68HC11 และ "โปรแกรมการตรวจสอบ" เป็นที่รู้จักกันในนามของบัฟฟาโลมอนิเตอร์ โดยทั่วไปมันเป็นเพียงโปรแกรมที่เก็บไว้ใน ROM ที่สื่อสารกับพีซีของคุณเป็นลำดับ คุณพิมพ์เทอร์มินัลและโปรแกรมแปลคำขอของคุณและให้ข้อมูลกลับ คุณสามารถถ่ายโอนข้อมูลหน่วยความจำไปยังหน้าจอค่าหน่วยความจำการเปลี่ยนแปลงขั้นตอนผ่านคำแนะนำ ฯลฯ คณะกรรมการที่เราใช้เป็นนี้อย่างใดอย่างหนึ่ง คอนโทรลเลอร์นี้ง่ายต่อการเรียนรู้ด้วย แต่เก่ามาก
sherrellbc

... หนังสือที่เราใช้คือสิ่งนี้ถ้าคุณสนใจ ฉันขอแนะนำให้ไปกับคอนโทรลเลอร์ที่ทันสมัยกว่าอย่าง AVR; คณะกรรมการพัฒนาของพวกเขาสามารถพบได้ที่นี่
sherrellbc

3

ฉันสอนทั้ง PIC (แกน 14 บิต) และชุดประกอบ ARM ชั้น PIC ฉันบอกว่าเมื่อพวกเขาเข้าใจความน่าเกลียดของสถาปัตยกรรมนั้นแล้วพวกเขาสามารถทำสิ่งอื่นได้ ARM (ไม่ใช่ Thumb / Cortex!) เป็นสถาปัตยกรรมที่ดีมากในการเรียนรู้การประกอบ เราใช้บอร์ด LPC2148


สวัสดี Wouter ยินดีที่ได้พบคุณที่นี่!
Olin Lathrop

2

ฉันเรียนรู้การประกอบ PIC แบบ 16 บิตด้วย dsPIC33F แอสเซมบลีของโปรเซสเซอร์นั้นค่อนข้าง C เช่นที่มันสนับสนุนพอยน์เตอร์และการดำเนินงานตัวแปรที่สาม (ตัวอย่างเช่น A = B + C) ซึ่งทำให้การเรียนรู้และปรับตัวเข้ากับมันง่ายขึ้นมาก


1

คุณกำลังสับสนไมโครคอนโทรลเลอร์และไมโครโปรเซสเซอร์ที่นี่ AVR เป็นสายไมโครคอนโทรลเลอร์โดย Atmel ไม่ใช่ไมโครโปรเซสเซอร์ ฉันขอแนะนำให้คุณค้นหาวิกิพีเดียเป็นครั้งแรกเพื่อให้เข้าใจถึงความแตกต่างระหว่างสิ่งเหล่านี้ได้ดียิ่งขึ้น โดยทั่วไปไมโครคอนโทรลเลอร์เป็นระบบที่สมบูรณ์ไม่มากก็น้อยในขณะที่ไมโครโปรเซสเซอร์เป็นเพียงซีพียู (ดังนั้นไมโครคอนโทรลเลอร์จึงมีไมโครโปรเซสเซอร์อยู่ภายใน)


ยาฉันรู้ว่าฉันไม่รู้ว่าทำไมฉันไม่ใส่มัน ฉันหมายถึงว่ามีไกด์ไม่มากที่พูดเกี่ยวกับการเชื่อมต่อ MP และหน่วยความจำ (เช่นแฟลชหรือ eeprom) เป็นต้น ...

1
เนื่องจากไมโครโปรเซสเซอร์ส่วนใหญ่ตอนนี้มีแคช / หน่วยความจำและ I / O บางส่วนมันเป็นเส้นพร่ามัวมาก
kenny

1
@ เซารอน - คุณแน่ใจหรือว่าคุณรู้ คุณใช้ MP อีกครั้ง ไมโครคอนโทรลเลอร์ (ซึ่งเป็นคำที่ถูกต้องสำหรับ AVR และ 99% ของอุปกรณ์ที่เรากล่าวถึงที่นี่) มักจะมีหน่วยความจำ (ทั้งที่ไม่เปลี่ยนแปลงเช่น EEPROM และแฟลชและ SRAM แบบระเหย) บนกระดาน เรียนรู้การใช้สิ่งต่าง ๆ บนเครื่องก่อนที่คุณจะเริ่มเข้าไปในอุปกรณ์ต่อพ่วง
Kevin Vermeer

1

ที่มหาวิทยาลัยของฉันเราได้รับการสอนการออกแบบฮาร์ดแวร์ / สถาปัตยกรรมควบคู่ไปกับภาษาแอสเซมบลี (ทั้งสองไปจับมือกันอย่างเห็นได้ชัด) ด้วย MIPS (หรืออาจจะ DLX ) ตั้งแต่นั้นมาฉันขลุกอยู่ในชุด PIC และ AVR นิดหน่อยที่โรงเรียน / ที่ทำงานและพวกมันก็คล้ายกันหมด ฉันคิดว่าการประกอบ MIPS เป็นจุดเริ่มต้นที่ดีเนื่องจากภาษานั้นง่ายมากเช่นเดียวกับสถาปัตยกรรมตัวประมวลผล

ดูเพิ่มเติม: หนังสือเล่มนี้ ไม่ใช่หนังสือที่ดีที่สุดในโลก แต่เป็นหนังสือออกแบบคอมพิวเตอร์มาตรฐานสำหรับมหาวิทยาลัยหลายแห่ง


Microchip PIC32 ใช้สถาปัตยกรรม MIPS และมันค่อนข้างง่ายที่จะผสมแอสเซมเบลอร์ MIPS กับ C.
tcrosley

0

ข้อเสนอแนะของฉันคือคนใดคนหนึ่งที่กำลังจะเริ่มศึกษาเกี่ยวกับไมโครคอนโทรลเลอร์และโปรเซสเซอร์ควรอ่านหนังสือตั้งชื่อ "รหัสภาษาที่ซ่อนอยู่ของคอมพิวเตอร์" ถ้าคุณศึกษาว่าเกือบคุณเป็นผู้เชี่ยวชาญกับโปรเซสเซอร์และการเขียนโปรแกรม avr ใช้ poney prog โปรแกรมเมอร์และโปรแกรม atmel studio6.1 จากเว็บไซต์ทางการของ atmel


โปรดจัดทำโครงร่างคุณสมบัติหลักของหนังสือและโปรแกรมเมอร์ซึ่งจะทำให้ OP มีแนวโน้มที่จะใช้งานได้อย่างแม่นยำ
Vorac

มันเกี่ยวกับการทำความเข้าใจกับไมโครคอนโทรลเลอร์ว่ามันพัฒนามาจากระบบดิจิทัลและอธิบายภาษาแอสเซมบลี
avinash

ไปที่ไซต์นี้ j.mp/mpcinterest เพื่อรับหนังสือเล่มนั้น
avinash
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.