คำถามติดแท็ก mplab

2
การคอมไพล์รหัสเพื่อเรียกใช้จาก RAM ภายนอก
ฉันกำลังพิจารณาการออกแบบสำหรับระบบเกมมินิมัลลิสต์ที่ใช้PIC18F85J5 ส่วนหนึ่งของการออกแบบของฉันคือเกมสามารถโหลดได้จากการ์ด SD โดยไม่ต้องทำการชิพโปรแกรมใหม่หรือการกระพริบหน่วยความจำโปรแกรม ฉันเลือกชิพนั้นเพราะมันมีอินเตอร์เฟสหน่วยความจำภายนอกที่จะอนุญาตให้ฉันรันโค้ดจาก SRAM ภายนอก แนวคิดพื้นฐานคือหน่วยความจำภายในของโปรแกรมจะมีส่วนต่อประสานสำหรับเรียกดูการ์ด SD และเมื่อผู้ใช้เลือกโปรแกรมมันจะคัดลอกไฟล์ฐานสิบหกจากการ์ด sd ไปยังหน่วยความจำภายนอกแล้วกระโดดลงสู่พื้นที่หน่วยความจำภายนอก . หน่วยความจำโปรแกรมภายในจะมีไลบรารีต่าง ๆ สำหรับกราฟิกอินพุตคอนโทรลเลอร์และยูทิลิตี้ต่าง ๆ ฉันค่อนข้างมั่นใจว่าฉันรู้วิธีทำให้ชิ้นส่วนเฟิร์มแวร์ภายในทำงานได้ดี ปัญหาคือการสร้างโปรแกรมให้ทำงานจาก RAM ภายนอก มันไม่เหมือนกับการกำหนดเป้าหมายรูปภาพปกติและจำเป็นต้องทราบถึงฟังก์ชั่นห้องสมุดที่มีอยู่ในหน่วยความจำภายใน แต่ไม่ต้องคอมไพล์ใหม่ นอกจากนี้ยังต้องเริ่มใช้ที่อยู่หลังจากแฟลชภายใน 32k ไม่ใช่ที่ศูนย์ มีวิธีที่ดีในการรวบรวมโปรแกรมโดยใช้ข้อ จำกัด ประเภทนี้หรือไม่? ฉันใช้ MPLab IDE แต่ฉันไม่คุ้นเคยกับมันหรือวิธีการกำหนดเองประเภทนี้
13 pic  compiler  mplab 

5
PIC32 vs dsPIC กับ ARM vs AVR สถาปัตยกรรมนั้นสำคัญหรือไม่เมื่อเราทำการเขียนโปรแกรมในภาษา C [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน2 ปีที่ผ่านมา ขณะนี้เรากำลังใช้ไมโครคอนโทรลเลอร์ PIC32 แบบ 32 บิต มันใช้งานได้ดีสำหรับความต้องการของเรา แต่เรากำลังสำรวจไมโครคอนโทรเลอร์คนอื่น ๆ ที่สามารถทำให้เราดีขึ้น + เรามีโครงการอื่นที่เรากำลังเลือก MCU เพื่อจุดประสงค์นั้นเราได้เลือกไมโครคอนโทรลเลอร์SAM DA ที่ใช้ ARMซึ่งเป็น 32- บิตเหมือนกัน แต่ใช้ ARM (เป็นที่นิยมมากกว่า PIC32 - ฉลาดในอุตสาหกรรม) ตอนนี้สำหรับ PIC32 เราใช้ MPLAB แต่สำหรับ ARM cortex-M0 เราจะใช้ Atmel Studio เราจะใช้ภาษา C ในทั้งสองแพลตฟอร์ม สิ่งที่ฉันกังวลคือเราจะใช้ไมโครคอนโทลเลอร์ 32 บิตสองตัว (จาก บริษัท เดียวกัน) …

1
ชิป dsPIC ทำงานที่ความเร็วปกติ
ฉันมี PCB สองแผ่น หนึ่งมี dsPIC30F6012a และอีกหนึ่ง dsPIC30F6015 ทั้งสองถูกโปรแกรมจากโครงการ HEX แยกต่างหากใน MPLAB X โดยใช้ PICkit 3 เฟิร์มแวร์ทั้งสองถูกนำไปใช้กับหลายสิบหน่วยก่อนถึงจุดนี้โดยไม่ยาก ปัจจุบันเฟิร์มแวร์ทำงานอย่างถูกต้องเมื่อตั้งโปรแกรมจากพีซีทุกเครื่อง แต่มีหนึ่งเครื่อง ในพีซีหนึ่งเครื่องที่เริ่มเมื่อวานนี้ทั้งโปรแกรมเฟิร์มแวร์ไม่มีข้อผิดพลาดที่เห็นได้ชัด แต่รันด้วยความเร็วปกติประมาณ 1/20 ก่อนหน้านี้เมื่อวานพีซีนั้นก็ตั้งโปรแกรมบอร์ดเหล่านี้โดยไม่มีปัญหา หน้าจอ Splash ใช้เวลาสองนาทีแทนที่จะเป็นห้าวินาทีไฟกระพริบช้ามากและนอกจากนี้ทุกอย่างทำงานได้อย่างถูกต้อง มันเกือบจะเหมือนกับว่าบิตการกำหนดค่า oscillator ได้รับการเปลี่ยนแปลง แต่ฉันไม่ทราบว่าจะมีที่ไหนใน MPLAB X ที่สามารถทำได้กับโครงการแบบสแตนด์อโลน ดังนั้นเฟิร์มแวร์ที่แตกต่างกันสองตัวบนชิปที่แตกต่างกันสองตัวในอินสแตนซ์ของการออกแบบ PCB เดียวกันหลายครั้งทำงานด้วยความเร็วที่แตกต่างกันขึ้นอยู่กับพีซีที่ใช้ในการเขียนโปรแกรมเท่านั้น จัดทำบอร์ดช้าบนพีซีที่ "ดี" ใหม่แก้ไขปัญหา ทำการตั้งโปรแกรมซ้ำอีกครั้งในบอร์ดเดียวกันบนพีซีที่ "เสีย" จะนำมันกลับมา สิ่งที่ฉันคิดได้ก็คือในพีซีเครื่องหนึ่งที่ใครบางคนกดปุ่ม "ทำให้มันช้า" แต่ฉันไม่พบสิ่งใดที่ระบุว่า (เทคโนโลยีของเรานั้นค่อนข้างสร้างสรรค์มาก) ตอนนี้ฉันกำลังถอนการติดตั้ง MPLAB X เช็ดการตั้งค่าผู้ใช้และติดตั้งเวอร์ชันที่ใหม่กว่า (เพิ่มจาก …

2
ต้องการความช่วยเหลือในการทำความเข้าใจแผนที่หน่วยความจำ PIC
พื้นหลังบางส่วน ฉันใช้ MPLABx กับ PicKit2 เพื่อตั้งโปรแกรมรูปภาพประเภทต่างๆ ในขณะนี้มันคือ 16F887 ฉันพยายามที่จะยึดติดกับห่วงโซ่เครื่องมือ Hi-Tech PICC Lite แต่ฉันไม่พอใจมากขึ้นกับการประกอบบางสิ่ง การดำเนินการที่น่าจะเร็วอย่างรวดเร็ว (พิจารณาวงจรการเรียนการสอน 500ns ที่ 8Mhz) กำลังดำเนินการจนเสร็จสิ้น 20us ดังนั้นฉันจึงเริ่มใส่รหัส ASM ของฉันเองเพื่อจัดการกับมัน อย่างไรก็ตามฉันมีปัญหาในการทำความเข้าใจแผนที่หน่วยความจำที่ให้ไว้ในแผ่นข้อมูลในหน้า 20 หน่วยความจำโปรแกรมเริ่มต้นที่ 0005h อย่างไรก็ตามหน้า 23 แสดงที่อยู่ไฟล์ของการลงทะเบียนเพื่อวัตถุประสงค์พิเศษเช่นพอร์ต A ที่อยู่ของพอร์ต A แสดงเป็น "05h" ฉันสับสนว่าจะแยกแยะความแตกต่างระหว่างตำแหน่งหน่วยความจำ 0005h อย่างไรและการลงทะเบียนวัตถุประสงค์พิเศษอยู่ที่ 05h ฉันจะอ้างอิงการลงทะเบียนวัตถุประสงค์พิเศษได้อย่างไร ฉันได้ทำการเขียนโปรแกรมแอสเซมเบลอร์ที่ครอบคลุมสำหรับชิป HC11 รุ่นเก่า แต่นี่เป็นการลงทุนครั้งแรกของฉันในการเข้ารหัส PIC asm ความช่วยเหลือใด ๆ ที่นี่จะได้รับการชื่นชม
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.