คู่มือผู้ใช้คอมพิวเตอร์ฝังตัวที่ทนทาน IBASE IBR215 Series
ซีรีส์ IBR215
คอมพิวเตอร์ฝังตัวที่ทนทาน
ด้วย NXP ARM@ Cortex@
A53 i.MX8M พลัส Quad SOC
ลิขสิทธิ์
© 2018 IBASE Technology, Inc. สงวนลิขสิทธิ์
ห้ามทำซ้ำ คัดลอก จัดเก็บส่วนใดส่วนหนึ่งของสิ่งพิมพ์นี้ในระบบการดึงข้อมูล แปลเป็นภาษาใดๆ หรือส่งต่อในรูปแบบใดๆ หรือโดยวิธีการใดๆ ทางอิเล็กทรอนิกส์ ทางกล การถ่ายเอกสาร หรืออย่างอื่น โดยไม่ได้รับความยินยอมเป็นลายลักษณ์อักษรล่วงหน้าจาก IBASE Technology, Inc. (ต่อไปนี้จะเรียกว่า “IBASE”)
การปฏิเสธความรับผิดชอบ
IBASE ขอสงวนสิทธิ์ในการเปลี่ยนแปลงและปรับปรุงผลิตภัณฑ์ที่อธิบายไว้ในเอกสารนี้โดยไม่ต้องแจ้งให้ทราบล่วงหน้า เราได้พยายามทุกวิถีทางเพื่อให้แน่ใจว่าข้อมูลในเอกสารถูกต้อง อย่างไรก็ตาม IBASE ไม่รับประกันว่าเอกสารนี้จะปราศจากข้อผิดพลาด IBASE จะไม่รับผิดชอบต่อความเสียหายโดยบังเอิญหรือเป็นผลสืบเนื่องที่เกิดขึ้นจากการใช้ในทางที่ผิดหรือการไม่สามารถใช้ผลิตภัณฑ์หรือข้อมูลที่มีอยู่ในที่นี้ และสำหรับการละเมิดสิทธิของบุคคลที่สามซึ่งอาจเป็นผลมาจากการใช้งาน
เครื่องหมายการค้า
เครื่องหมายการค้า การจดทะเบียน และตราสินค้าทั้งหมดที่กล่าวถึงในที่นี้ใช้เพื่อวัตถุประสงค์ในการระบุตัวตนเท่านั้น และอาจเป็นเครื่องหมายการค้าและ/หรือเครื่องหมายการค้าจดทะเบียนของเจ้าของที่เกี่ยวข้อง
การปฏิบัติตาม
ผลิตภัณฑ์ที่อธิบายในคู่มือนี้สอดคล้องกับคำสั่งของสหภาพยุโรป (CE) ที่เกี่ยวข้องทั้งหมด หากมีเครื่องหมาย CE เพื่อให้ระบบยังคงเป็นไปตามมาตรฐาน CE ให้ใช้เฉพาะชิ้นส่วนที่เป็นไปตามมาตรฐาน CE เท่านั้น การรักษาการปฏิบัติตามมาตรฐาน CE ยังต้องใช้สายเคเบิลและเทคนิคการเดินสายเคเบิลที่เหมาะสม
ผลิตภัณฑ์นี้ได้รับการทดสอบและพบว่าเป็นไปตามข้อจำกัดสำหรับอุปกรณ์คลาส B ตามส่วนที่ 15 ของกฎ FCC ขีดจำกัดเหล่านี้ได้รับการออกแบบเพื่อให้การป้องกันที่เหมาะสมต่อการรบกวนที่เป็นอันตรายในการติดตั้งในที่พักอาศัย อุปกรณ์นี้สร้าง ใช้ และสามารถแผ่พลังงานความถี่วิทยุ และหากไม่ได้ติดตั้งและใช้งานตามคำแนะนำของผู้ผลิต อาจก่อให้เกิดการรบกวนที่เป็นอันตรายต่อการสื่อสารทางวิทยุ
วีอี
ต้องไม่ทิ้งผลิตภัณฑ์นี้เหมือนกับขยะในครัวเรือนตามปกติ ตามคำสั่งของสหภาพยุโรปว่าด้วยขยะอุปกรณ์ไฟฟ้าและอิเล็กทรอนิกส์ (WEEE – 2012/19/EU) แต่ควรกำจัดทิ้งโดยส่งคืนไปยังจุดรวบรวมขยะรีไซเคิลของเทศบาล ตรวจสอบข้อบังคับท้องถิ่นสำหรับการกำจัดผลิตภัณฑ์อิเล็กทรอนิกส์
IBASE สีเขียว
ผลิตภัณฑ์นี้เป็นไปตามคำสั่ง RoHS ปัจจุบัน ซึ่งจำกัดการใช้สารต่อไปนี้ในระดับความเข้มข้นไม่เกิน 0.1% โดยน้ำหนัก (1000 ppm) ยกเว้นแคดเมียม ซึ่งจำกัดไว้ที่ 0.01% โดยน้ำหนัก (100 ppm)
- ตะกั่ว (Pb)
- ปรอท (Hg)
- แคดเมียม (Cd)
- โครเมียมเฮกซะวาเลนท์ (Cr6+)
- โพลีโบรมิเนตไบฟีนิล (PBB)
- โพลีโบรมิเนต ไดฟีนิล อีเทอร์ (PBDE)
ข้อมูลด้านความปลอดภัยที่สำคัญ
อ่านข้อมูลด้านความปลอดภัยต่อไปนี้อย่างละเอียดก่อนใช้อุปกรณ์นี้
การตั้งค่าระบบของคุณ:
- วางอุปกรณ์ในแนวนอนบนพื้นผิวที่มั่นคงและมั่นคง
- ห้ามใช้ผลิตภัณฑ์นี้ใกล้น้ำหรือแหล่งกำเนิดความร้อนใดๆ
- เว้นระยะห่างรอบ ๆ อุปกรณ์ให้เพียงพอ และอย่าปิดกั้นช่องระบายอากาศ ห้ามทำตกหรือใส่สิ่งของใด ๆ ลงในช่องเปิด
- ใช้ผลิตภัณฑ์นี้ในสภาพแวดล้อมที่มีอุณหภูมิแวดล้อมระหว่าง 0˚C ถึง 60˚C
การดูแลระหว่างการใช้งาน:
- อย่าวางของหนักทับบนตัวเครื่อง
- ตรวจสอบให้แน่ใจว่าเชื่อมต่อระดับเสียงที่ถูกต้องtage เข้ากับอุปกรณ์ ไม่สามารถจ่ายปริมาณที่ถูกต้องได้tage อาจทำให้เครื่องเสียหายได้
- ห้ามเดินทับสายไฟหรือวางสิ่งใด ๆ บนสายไฟ
- หากคุณใช้สายไฟต่อพ่วง โปรดตรวจสอบให้แน่ใจว่ารวม ampการจัดอันดับของอุปกรณ์ทั้งหมดที่เสียบเข้ากับสายไฟต่อพ่วงไม่ได้ ampให้คะแนนก่อน
- อย่าทำน้ำหกหรือของเหลวอื่น ๆ บนอุปกรณ์ของคุณ
- ถอดสายไฟออกจากเต้าเสียบที่ผนังทุกครั้งก่อนทำความสะอาดเครื่อง
- ใช้เฉพาะสารทำความสะอาดที่เป็นกลางในการทำความสะอาดอุปกรณ์เท่านั้น
- ดูดฝุ่นและอนุภาคออกจากช่องระบายอากาศโดยใช้เครื่องดูดฝุ่นคอมพิวเตอร์
การถอดประกอบผลิตภัณฑ์
อย่าพยายามซ่อมแซม ถอดประกอบ หรือดัดแปลงอุปกรณ์ การกระทำดังกล่าวจะทำให้การรับประกันเป็นโมฆะและอาจส่งผลให้เกิดความเสียหายต่อผลิตภัณฑ์หรือการบาดเจ็บส่วนบุคคล
คำเตือน
เปลี่ยนเฉพาะด้วยชนิดเดียวกันหรือเทียบเท่าที่ผู้ผลิตแนะนำเท่านั้น
กำจัดแบตเตอรี่ที่ใช้แล้วโดยปฏิบัติตามกฎข้อบังคับท้องถิ่น
นโยบายการรับประกัน
- ผลิตภัณฑ์มาตรฐาน IBASE:
รับประกัน 24 เดือน (2 ปี) นับจากวันที่จัดส่ง หากไม่สามารถระบุวันที่จัดส่งได้ สามารถใช้หมายเลขซีเรียลของผลิตภัณฑ์เพื่อกำหนดวันที่จัดส่งโดยประมาณได้ - ส่วนของบุคคลที่สาม:
การรับประกัน 12 เดือน (1 ปี) นับจากการจัดส่งสำหรับชิ้นส่วนของบุคคลที่สามที่ไม่ได้ผลิตโดย IBASE เช่น CPU, ตัวทำความเย็น CPU, หน่วยความจำ, อุปกรณ์จัดเก็บข้อมูล, อะแดปเตอร์จ่ายไฟ, แผงจอแสดงผล และหน้าจอสัมผัส
อย่างไรก็ตาม ผลิตภัณฑ์ที่เสียหายเนื่องจากการใช้งานผิดวิธี อุบัติเหตุ การติดตั้งที่ไม่ถูกต้อง หรือการซ่อมแซมที่ไม่ได้รับอนุญาต จะถือว่าไม่อยู่ในการรับประกัน และลูกค้าจะต้องถูกเรียกเก็บเงินสำหรับค่าซ่อมแซมและค่าขนส่ง
การสนับสนุนทางเทคนิคและบริการ
- เยี่ยมชม IBASE webเว็บไซต์ที่ www.ibase.com.tw เพื่อค้นหาข้อมูลล่าสุดเกี่ยวกับผลิตภัณฑ์
- หากคุณประสบปัญหาทางเทคนิคและต้องการความช่วยเหลือจากตัวแทนจำหน่ายหรือตัวแทนขาย โปรดเตรียมและส่งข้อมูลต่อไปนี้:
• ชื่อรุ่นสินค้า
• หมายเลขซีเรียลของผลิตภัณฑ์
• คำอธิบายโดยละเอียดของปัญหา
• ข้อความแสดงข้อผิดพลาดในรูปแบบข้อความหรือภาพหน้าจอหากมี
• การจัดเรียงอุปกรณ์ต่อพ่วง
• ซอฟต์แวร์ที่ใช้ (เช่น ระบบปฏิบัติการและซอฟต์แวร์แอปพลิเคชัน)
3. หากต้องการบริการซ่อม โปรดดาวน์โหลดแบบฟอร์ม RMA ที่ http://www.ibase.com.tw/english/Supports/RMAService/ กรอกแบบฟอร์มและติดต่อผู้จัดจำหน่ายหรือตัวแทนฝ่ายขายของคุณ
บทที่ 1 ข้อมูลทั่วไป
ข้อมูลที่ให้ไว้ในบทนี้รวมถึง:
- คุณสมบัติ
- รายการบรรจุภัณฑ์
- ข้อมูลจำเพาะ
- เกินview
- ขนาด
1.1 บทนำ
IBR215 เป็นระบบฝังตัวที่ใช้ ARM® พร้อมด้วยโปรเซสเซอร์ NXP Cortex® i.MX8M Plus A53 อุปกรณ์นำเสนอกราฟิก 2D, 3D และการเร่งความเร็วมัลติมีเดีย ในขณะที่ยังมีอุปกรณ์ต่อพ่วงมากมายที่เหมาะสำหรับการใช้งานในอุตสาหกรรม เช่น RS-232/422/485, GPIO, USB, USB OTG, LAN, จอแสดงผล HDMI, M.2 E2230 สำหรับ การเชื่อมต่อไร้สายและ mini-PCIe เพื่อการขยาย
1.2 คุณสมบัติ
- โปรเซสเซอร์ระดับอุตสาหกรรม NXP ARM® Cortex® A53 i.MX8M Plus Quad 1.6GHz
- 3 GB LPDDR4, 16 GB eMMC และซ็อกเก็ต SD
- การเชื่อมต่อภายนอกรวมถึง USB, HDMI, Ethernet
- รองรับ M.2 B-Key (3052) สำหรับโมดูล 5G
- สัญญาณขยาย I/O ที่หลากหลายสำหรับการออกแบบบอร์ด IO เพื่อรองรับ WiFi/BT, 4G/LTE, LCD, กล้อง, NFC, รหัส QR ฯลฯ
- การออกแบบที่ทนทานและไม่มีพัดลม
1.3 รายการบรรจุภัณฑ์
แพ็คเกจผลิตภัณฑ์ของคุณควรมีรายการด้านล่าง หากรายการใดรายการหนึ่งด้านล่างหายไป โปรดติดต่อผู้จัดจำหน่ายหรือตัวแทนจำหน่ายที่คุณซื้อผลิตภัณฑ์ คู่มือการใช้งานสามารถดาวน์โหลดได้จากของเรา webเว็บไซต์.
• ISR215-Q316I
1.4 ข้อมูลจำเพาะ
ข้อมูลจำเพาะทั้งหมดอาจเปลี่ยนแปลงได้โดยไม่ต้องแจ้งให้ทราบล่วงหน้า
1.5 ผลิตภัณฑ์เกินview
สูงสุด VIEW
ไอ/โอ VIEW
1.6 มิติ
หน่วย : มม.
บทที่ 2 การกำหนดค่าฮาร์ดแวร์
ส่วนนี้ประกอบด้วยข้อมูลทั่วไปเกี่ยวกับ:
- การติดตั้ง
- จัมเปอร์และขั้วต่อ
2.1.1 การติดตั้งการ์ด Mini-PCIe และ M.2
หากต้องการติดตั้งการ์ด mini-PCIe และ NGFF M.2 ให้ถอดฝาอุปกรณ์ออกก่อนตามที่กล่าวไว้ข้างต้น จากนั้นค้นหาช่องภายในอุปกรณ์ และดำเนินการตามขั้นตอนต่อไปนี้
1) จัดตำแหน่งคีย์ของการ์ดมินิ PCIe ให้ตรงกับคีย์ของอินเทอร์เฟซมินิ PCIe และใส่การ์ดในแนวเฉียง (ใส่การ์ด M.2 ในลักษณะเดียวกัน)
2) กดการ์ดมินิ PCIe ลงตามที่แสดงในภาพด้านล่าง และยึดเข้ากับสแตนด์ออฟทองเหลืองด้วยสกรู
(ยึดการ์ด M.2 ด้วยสกรูหนึ่งตัวด้วย)
2.2.1 การตั้งค่าจัมเปอร์
กำหนดค่าอุปกรณ์ของคุณโดยใช้จัมเปอร์เพื่อเปิดใช้งานคุณสมบัติที่คุณต้องการตามแอปพลิเคชันของคุณ ติดต่อซัพพลายเออร์ของคุณหากคุณมีข้อสงสัยเกี่ยวกับการกำหนดค่าที่ดีที่สุดสำหรับการใช้งานของคุณ
2.2.2 วิธีการตั้งค่าจัมเปอร์
จัมเปอร์เป็นตัวนำที่มีความยาวสั้นประกอบด้วยหมุดโลหะหลายอันที่มีฐานติดตั้งอยู่บนแผงวงจร ฝาครอบจัมเปอร์ถูกวาง (หรือถอดออก) บนหมุดเพื่อเปิดหรือปิดฟังก์ชันหรือคุณสมบัติ หากจัมเปอร์มี 3 พิน คุณสามารถเชื่อมต่อพิน 1 กับพิน 2 หรือพิน 2 กับพิน 3 ได้โดยการย่อจัมเปอร์
โปรดดูภาพประกอบด้านล่างเพื่อตั้งค่าจัมเปอร์
เมื่อจัมเปอร์สองตัวถูกหุ้มไว้ในฝาจัมเปอร์ จัมเปอร์นี้จะถูกปิด กล่าวคือ เปิดอยู่
เมื่อถอดฝาครอบจัมเปอร์ออกจากหมุดจัมเปอร์สองตัว จัมเปอร์นี้จะเปิดอยู่ นั่นคือปิดอยู่
2.1 ตำแหน่งจัมเปอร์และขั้วต่อบนเมนบอร์ด IBR215 เมนบอร์ด: IBR215
2.2 Jumper & Connectors ข้อมูลอ้างอิงด่วนสำหรับเมนบอร์ด IBR215
ขั้วต่อเซลล์ลิเธียม RTC (CN1)
2.4.1 ขั้วต่อสัญญาณเสียงเข้าและออก (CN2)
2.4.2 ขั้วต่อ I2C (CN13)
2.4.3 อินพุตไฟ DC (P17,CN18)
P17: อินพุต DC 12V~24V
CN18:หัวต่ออินพุต/เอาต์พุต DC
2.4.4 ปุ่มเปิด/ปิดระบบ (SW2, CN17)
SW2:สวิตช์เปิด/ปิด
CN17: ขั้วต่อสัญญาณเปิด/ปิด
2.4.5 พอร์ตอนุกรม (P16)
2.4.6 พอร์ตบอร์ด IO (P18, P19, P20)
P18:
P19:
P20:
2.3 ตำแหน่งจัมเปอร์และขั้วต่อบนบอร์ด IBR215-IO
2.4 ข้อมูลอ้างอิงด่วนของจัมเปอร์และตัวเชื่อมต่อสำหรับบอร์ด IBR215-IO
2.6.1 การเลือก COM RS-232/422/485 (SW3)
2.6.2 พอร์ต COM RS-232/422/485 (P14)
2.6.3 ขั้วต่อจอแสดงผล LVDS (CN6, CN7)
2.6.4 ขั้วต่อ COM RS232 (CN12)
2.6.5 ขั้วต่อควบคุมแบ็คไลท์ LVDS (CN9)
2.6.6 ขั้วต่อ MIPI-CSI (CN4, CN5)
2.6.7 พอร์ต USB 3.0 Type-A คู่ (CN3)
2.6.8 การตั้งค่าพลังงาน BKLT_LCD (P11)
2.6.9 การตั้งค่าพลังงาน LVDS_VCC (P10)
2.6.10 ตัวเลือกเสียง PCIE/M.2 (P5)
2.6.11 ขั้วต่อ I2C (CN11)
2.6.12 แคนบัส (CN14)
บทที่ 3 การตั้งค่าซอฟต์แวร์
บทนี้จะแนะนำการตั้งค่าต่อไปนี้บนอุปกรณ์: (สำหรับผู้ใช้ขั้นสูงเท่านั้น)
- สร้างการ์ด SD กู้คืน
- อัพเกรดเฟิร์มแวร์ผ่านการ์ด SD กู้คืน
3.1 สร้างการ์ด SD การกู้คืน
หมายเหตุ: นี่เป็นสำหรับผู้ใช้ขั้นสูงที่มีอิมเมจมาตรฐาน IBASE file เท่านั้น.
โดยทั่วไป IBR215 จะโหลดระบบปฏิบัติการ (Android หรือ Yocto) ไว้ใน eMMC ตามค่าเริ่มต้น เชื่อมต่อ HDMI กับ IBR215 และจ่ายไฟ 12V-24V โดยตรง
บทนี้จะแนะนำคุณเกี่ยวกับการสร้างการ์ด microSD เพื่อบูตการกู้คืน
3.1.1 การเตรียมการ์ด SD การกู้คืนเพื่อติดตั้งอิมเมจ Linux / Android ลงใน eMMC
หมายเหตุ: ข้อมูลทั้งหมดใน eMMC จะถูกลบ
1) ข้อกำหนดของระบบ:
ระบบปฏิบัติการ: Windows 7 หรือใหม่กว่า เครื่องมือ: uuu การ์ด SD: ขนาด 4GB ขึ้นไป
2) ใส่การ์ด SD ของคุณเข้ากับบอร์ดนี้ (เช่น ขั้วต่อ P1) เชื่อมต่อบอร์ดกับพีซีผ่านพอร์ต mini-USB (เช่น ขั้วต่อ P4) และเปลี่ยนโหมดการบูตเป็นโหมดดาวน์โหลด
3) บูต IBR215 และแฟลช SD ผ่านคำสั่ง CMD “uuu.exe uuu-sdcard.auto” หรือดับเบิลคลิก “FW_down-sdcard.bat” (วิธีเดียวกับการอัปเดต PCBA)
3.1.2 อัปเกรดเฟิร์มแวร์ผ่านการ์ด SD การกู้คืน
1) ใส่การกู้คืน fileลงในแฟลชดิสก์ USB (FAT32)
A> Yocto/Ubuntu: คัดลอกการกู้คืนทั้งหมด files เข้าสู่ PATH:
2) เสียบ (ขั้นตอนที่ 1) SD และ (ขั้นตอนที่ 2) แฟลชดิสก์ USB เข้าใน IBR215
3) บูตปกติ IBR215 (SW1 Pin1 ปิด) เริ่มการกู้คืน eMMC โดยอัตโนมัติ
4) ข้อมูลการอัปเดตจะแสดงบน HDMI
บทที่ 4 คู่มือแหล่งที่มา BSP
บทนี้เหมาะสำหรับวิศวกรซอฟต์แวร์ขั้นสูงเท่านั้น โดยจะสร้างซอร์ส BSP หัวข้อที่ครอบคลุมในบทนี้มีดังนี้:
- การตระเตรียม
- การสร้างการปล่อยตัว
- การติดตั้งปล่อยลงบนบอร์ด
4.1 การสร้างแหล่ง BSP
4.1.1 การเตรียมตัว
เวอร์ชัน Ubuntu ขั้นต่ำที่แนะนำคือ 18.04 หรือใหม่กว่า
1) ติดตั้งแพ็คเกจที่จำเป็นก่อนสร้าง:
sudo apt-get ติดตั้ง gawk wget git-core diffstat คลายซิป texinfo gcc-multilib \
การสร้าง chrpath ที่จำเป็น socat cpio python python3 python3-pip python3-pexpect \
xz-utils debianutils iputils-ping python3-git python3-jinja2 libegl1-mesa libsdl1.2-dev \
ไพลินท์3 xterm
2) ดาวน์โหลด toolchain
ต้องใช้ clang เวอร์ชันใหม่กว่าในการคอมไพล์เคอร์เนล Linux ทำตามขั้นตอนต่อไปนี้เพื่อตั้งค่า clang ที่จะใช้ในการคอมไพล์เคอร์เนล Linux: sudo git clone https://android.googlesource.com/platform/prebuilts/clang/host/linux-x86 /opt/ prebuiltandroid-clang -b master cd /opt/prebuilt-android-clang
sudo git checkout 007c96f100c5322acc37b84669c032c0121e68d0 ส่งออก CLANG_PATH=/opt/prebuilt-android-clang
คำสั่งส่งออกก่อนหน้าสามารถเพิ่มลงใน “/etc/profile” เมื่อโฮสต์บูตขึ้น
“AARCH64_GCC_CROSS_COMPILE” และ “CLANG_PATH” ได้รับการตั้งค่าและสามารถใช้งานได้โดยตรง
ประการที่สอง เตรียมสภาพแวดล้อมการสร้างสำหรับ U-Boot และเคอร์เนล Linux
ขั้นตอนนี้มีความจำเป็นเนื่องจากไม่มีเครื่องมือเชนการคอมไพล์แบบครอสของ GCC ในเชนของฐานโค้ด AOSP
ก. ดาวน์โหลดห่วงโซ่เครื่องมือสำหรับ A-profile สถาปัตยกรรมบนหน้าดาวน์โหลดของนักพัฒนา GNU-A ของ ARM ขอแนะนำ
เพื่อใช้เวอร์ชัน 8.3 สำหรับรุ่นนี้ คุณสามารถดาวน์โหลด “gcc-arm-8.3-2019.03-x86_64-aarch64- elf.tar.xz” หรือ “gcc-arm-8.3-2019.03-x86_64-aarch64-linux-gnu.tar.xz” ได้ ไฟล์แรกมีไว้สำหรับการคอมไพล์โปรแกรมเปล่า และไฟล์ที่สองยังใช้สำหรับคอมไพล์โปรแกรมแอปพลิเคชันได้อีกด้วย
ข. คลายความดัน file เข้าไปในเส้นทางบนดิสก์ภายในเครื่อง เช่นample เพื่อ “/opt/” ส่งออกตัวแปรชื่อ “AARCH64_GCC_CROSS_COMPILE” เพื่อชี้ไปที่เครื่องมือดังต่อไปนี้:
# ถ้าใช้ “gcc-arm-8.3-2019.03-x86_64-aarch64-elf.tar.xz” sudo tar -xvJf gcc-arm-8.3-2019.03-x86_64-aarch64-elf.tar.xz -C /opt
export AARCH64_GCC_CROSS_COMPILE=/opt/gcc-arm-8.3-2019.03-x86_64-aarch64-elf/bin/aarch64-elf-
# ถ้าใช้ “gcc-arm-8.3-2019.03-x86_64-aarch64-linux-gnu.tar.xz” sudo tar -xvJf gcc-arm-8.3-2019.03-x86_64-aarch64-linux-gnu.tar.xz -C /opt export AARCH64_GCC_CROSS_COMPILE=/opt/gcc-arm-8.3-2019.03-x86_64-aarch64-linuxgnu/bin/aarch64-linux-gnu
3) ขยายแหล่งที่มา IBR215 file (อดีตample ibr215-bsp.tar.bz2) ลงในโฟลเดอร์ “/home/”
4.1.2 การปล่อยอาคาร
4.1.2.1 สำหรับ yocto/Ubuntu/debian
ซีดี /home/โฟลเดอร์ bsp
./สร้าง-bsp-5.4.sh
4.1.3.2 สำหรับแอนดรอยด์
ซีดี /home/โฟลเดอร์ bsp
แหล่งที่มา build/envsetup.sh
มื้อเที่ยง evk_8mp-userdebug
ทำให้ ANDROID_COMPILE_WITH_JACK=false
./imx-make.sh –j4
ทำ –j4
4.1.3 การติดตั้งรีลีสเข้ากับบอร์ด
ภาคผนวก
ส่วนนี้จะให้ข้อมูลรหัสอ้างอิง
ก. วิธีใช้ GPIO ใน Linux
# กฎค่า GPIO: gpioX_N >> 32*(X-1)+N
# ใช้ gpio5_18 เป็นตัวอย่างเช่นampดังนั้นมูลค่าการส่งออกควรเป็น 32*(5-1)+18=146
# GPIO เช่นampส่วนที่ 1: เอาท์พุต
echo 32 > /sys/class/gpio/export
echo ออก > /sys/class/gpio/gpio146/direction
echo 0 > /sys/class/gpio/gpio146/value
echo 1 > /sys/class/gpio/gpio146/value
# GPIO เช่นampบทที่ 2: อินพุต
echo 32 > /sys/class/gpio/export
echo ใน > /sys/class/gpio/gpio146/direction
แมว /sys/class/gpio/gpio146/ค่า
B. วิธีใช้ Watchdog ใน Linux
// สร้าง fd
int fd;
//เปิดอุปกรณ์เฝ้าระวัง
fd = เปิด(“/dev/watchdog”, O_WRONLY);
//รับการสนับสนุน watchdog
ioctl(fd, WDIOC_GETSUPPORT, &ident);
//รับสถานะเฝ้าระวัง
ioctl(fd, WDIOC_GETSTATUS, และสถานะ);
//รับการหมดเวลาเฝ้าระวัง
ioctl(fd, WDIOC_GETTIMEOUT, &timeout_val) ตามลำดับ
//ตั้งค่าการหมดเวลาเฝ้าระวัง
ioctl(fd, WDIOC_SETTIMEOUT, &timeout_val) ตามลำดับ
//ให้อาหารสุนัข
ioctl(fd, WDIOC_KEEPALIVE, &dummy);
C. การทดสอบ eMMC
หมายเหตุ: การดำเนินการนี้อาจทำให้ข้อมูลที่จัดเก็บไว้ในแฟลช eMMC เสียหาย ก่อนเริ่มการทดสอบ ตรวจสอบให้แน่ใจว่าไม่มีข้อมูลสำคัญในแฟลช eMMC ที่ใช้งานอยู่
อ่าน เขียน และตรวจสอบ
MOUNT_POINT_STR=”/var”
#สร้างข้อมูล file
dd if=/dev/urandom ของ=/tmp/data1 bs=1024k count=10
#เขียนข้อมูลลง emmc
dd if=/tmp/data1 of=$MOUNT_POINT_STR/data2 bs=1024k count=10
#อ่านข้อมูล2และเปรียบเทียบกับข้อมูล1
คำสั่ง $MOUNT_POINT_STR/data2 /tmp/data1
ทดสอบความเร็ว eMMC
MOUNT_POINT_STR=”/var”
#รับความเร็วในการเขียน emmc”
เวลา dd ถ้า=/dev/urandom ของ=$MOUNT_POINT_STR/test bs=1024k count=10
# ทำความสะอาดแคช
echo 3 > /proc/sys/vm/drop_caches
#รับความเร็วในการอ่าน emmc”
เวลา dd ถ้า=$MOUNT_POINT_STR/การทดสอบ=/dev/null bs=1024k จำนวน=10
D. การทดสอบ USB (แฟลชดิสก์)
ใส่ดิสก์แฟลช USB จากนั้นตรวจสอบให้แน่ใจว่าอยู่ในรายการอุปกรณ์ IBR210
หมายเหตุ: การดำเนินการนี้อาจทำให้ข้อมูลที่จัดเก็บไว้ใน USB แฟลชดิสก์เสียหายได้ ก่อนเริ่มการทดสอบ ตรวจสอบให้แน่ใจว่าไม่มีข้อมูลสำคัญในแฟลช eMMC ที่ใช้งานอยู่
อ่าน เขียน และตรวจสอบ
USB_DIR=”/รัน/สื่อ/mmcblk1p1″
#สร้างข้อมูล file
dd if=/dev/urandom ของ=/var/data1 bs=1024k count=100
#เขียนข้อมูลลงในดิสก์แฟลช USB
dd if=/var/data1 of=$USB_DIR/data2 bs=1024k count=100
#อ่านข้อมูล2และเปรียบเทียบกับข้อมูล1
คำสั่ง $USB_DIR/data2 /var/data1
ทดสอบความเร็ว USB
USB_DIR=”/รัน/สื่อ/mmcblk1p1″
# ความเร็วในการเขียน USB
dd if=/dev/zero of=$BASIC_DIR/$i/test bs=1M count=1000 oflag=nocache
# ความเร็วในการอ่าน USB
dd ถ้า=$BASIC_DIR/$i/test ของ=/dev/null bs=1M oflag=nocache
E. การทดสอบการ์ด SD
เมื่อ IBR210 ถูกบูทจาก eMMC การ์ด SD จะเป็น “/dev/mmcblk1” และสามารถดูได้ด้วยคำสั่ง “ls /dev/mmcblk1*”:
/dev/mmcblk1 /dev/mmcblk1p2 /dev/mmcblk1p4 /dev/mmcblk1p5 /dev/mmcblk1p6
หมายเหตุ: การดำเนินการนี้อาจทำให้ข้อมูลที่เก็บไว้ในการ์ด SD เสียหาย ก่อนเริ่มการทดสอบ ตรวจสอบให้แน่ใจว่าไม่มีข้อมูลสำคัญในแฟลช eMMC ที่ใช้งานอยู่
อ่าน เขียน และตรวจสอบ
SD_DIR =”/ run/media/mmcblk1″
#สร้างข้อมูล file
dd if=/dev/urandom ของ=/var/data1 bs=1024k count=100
#เขียนข้อมูลลงในการ์ด SD
dd if=/var/data1 of=$ SD_DIR/data2 bs=1024k count=100
#อ่านข้อมูล2และเปรียบเทียบกับข้อมูล1
$SD_DIR/data2 /var/data1 = $SD_DIR/dataXNUMX /var/dataXNUMX = $SD_DIR/dataXNUMX /var/dataXNUMX /var/dataXNUMX /var/dataXNUMX /var/dataXNUMX ...
ทดสอบความเร็วการ์ด SD
SD_DIR =”/ run/media/mmcblk1″
# ความเร็วในการเขียน SD
dd if=/dev/zero of=$SD_DIR/test bs=1M count=1000 oflag=nocache
# ความเร็วในการอ่าน SD
dd ถ้า=$SD_DIR/ทดสอบของ=/dev/null bs=1M oflag=nocache
การทดสอบ F. RS-232
//เปิด ttymxc1
fd = เปิด (/dev/ttymxc1,O_RDWR );
//ตั้งค่าความเร็ว
tcgetattr(fd, &opt);
cfsetispeed(&opt, ความเร็ว);
cfsetospeed(&opt, ความเร็ว);
tcsetattr(fd, TCSANOW, และตัวเลือก)
//รับความเร็ว
tcgetattr(fd, &opt);
ความเร็ว = cfgetispeed(&opt);
//ตั้งค่าความเท่าเทียมกัน
// ตัวเลือก.c_cflag
ตัวเลือก.c_cflag &= ~CSIZE;
ตัวเลือก.c_cflag &= ~CSIZE;
options.c_lflag &= ~(ICANON | ECHO | ECHOE | ISIG); /*ป้อนข้อมูล*/
ตัวเลือก.c_oflag &= ~OPOST; /*เอาต์พุต*/
//ตัวเลือก.c_cc
ตัวเลือก.c_cc[VTIME] = 150;
ตัวเลือก.c_cc[VMIN] = 0;
#ตั้งค่าความเท่าเทียมกัน
tcsetattr(fd, TCSANOW, และตัวเลือก)
//เขียน ttymxc1
เขียน(fd, write_buf, sizeof(write_buf));
//อ่าน ttymxc1
อ่าน(fd, read_buf, sizeof(read_buf)))
กรัมทดสอบ RS-485
//เปิด ttymxc1
fd = เปิด (/dev/ttymxc1,O_RDWR );
//ตั้งค่าความเร็ว
tcgetattr(fd, &opt);
cfsetispeed(&opt, ความเร็ว);
cfsetospeed(&opt, ความเร็ว);
tcsetattr(fd, TCSANOW, &opt
//รับความเร็ว
tcgetattr(fd, &opt);
ความเร็ว = cfgetispeed(&opt);
//ตั้งค่าความเท่าเทียมกัน
// ตัวเลือก.c_cflag
ตัวเลือก.c_cflag &= ~CSIZE;
ตัวเลือก.c_cflag &= ~CSIZE;
ตัวเลือก.c_cflag &= ~CRTSCTS;
options.c_lflag &= ~(ICANON | ECHO | ECHOE | ISIG); /*ป้อนข้อมูล*/
ตัวเลือก.c_oflag &= ~OPOST; /*เอาต์พุต*/
//ตัวเลือก.c_cc
ตัวเลือก.c_cc[VTIME] = 150;
ตัวเลือก.c_cc[VMIN] = 0;
#ตั้งค่าความเท่าเทียมกัน
tcsetattr(fd, TCSANOW, และตัวเลือก)
//เขียน ttymxc1
เขียน(fd, write_buf, sizeof(write_buf));
//อ่าน ttymxc1
อ่าน(fd, read_buf, sizeof(read_buf)))
ซ. การทดสอบเสียง
โยคโต/เดเบียน/อูบุนตู
// เล่น mp3 ด้วยเสียง (ALC5640)
gplay-1.0 /home/root/ testscript/audio/a.mp3 –audio-sink=”alsasink –device=hw:1”
// บันทึก mp3 ด้วยเสียง (ALC5640)
arecord -f cd $basepath/b.mp3 -D ปลั๊ก hw:1,0
สำหรับหุ่นยนต์:
กรุณาบันทึกและเล่นไฟล์ APK
I. การทดสอบอีเทอร์เน็ต
• ทดสอบปิงอีเทอร์เน็ต
#ping เซิฟเวอร์ 192.168.1.123
ปิง -c 20 192.168.1.123 >/tmp/ethernet_ping.txt
• ทดสอบ TCP อีเทอร์เน็ต
#server 192.168.1.123 รันคำสั่ง “iperf3 -s”
#สื่อสารกับเซิร์ฟเวอร์ 192.168.1.123 ในโหมด TCP โดย iperf3
iperf3-c 192.168.1.123-i 1-t 20-w 32M-P 4 แบนด์วิดท์
• ทดสอบ UDP อีเทอร์เน็ต
#server 192.168.1.123 รันคำสั่ง “iperf3 -s”
#สื่อสารกับเซิร์ฟเวอร์ 192.168.1.123 ในโหมด UDP โดย iperf3
iperf3 -c $SERVER_IP -u -i 1 -b 200 เมกะไบต์
การทดสอบ J. LVDS (ไม่รองรับ Android)
//เปิด file สำหรับการอ่านและการเขียน
framebuffer_fd = เปิด(“/dev/fb0”, O_RDWR);
// รับข้อมูลหน้าจอคงที่
ioctl(เฟรมบัฟเฟอร์_fd, FBIOGET_FSCREENINFO, &finfo)
// รับข้อมูลหน้าจอตัวแปร
ioctl(เฟรมบัฟเฟอร์_fd, FBIOGET_VSCREENINFO, &vinfo)
// คำนวณขนาดหน้าจอเป็นหน่วยไบต์
ขนาดหน้าจอ = vinfo.xres * vinfo.yres * vinfo.bits_per_pixel / 8;
// แมปอุปกรณ์เข้ากับหน่วยความจำ
fbp = (char *)mmap(0, ขนาดหน้าจอ, PROT_READ | PROT_WRITE, MAP_SHARED, framebuffer_fd,
0);
// หาว่าต้องใส่พิกเซลไว้ตรงไหนในหน่วยความจำ
memset(fbp, 0x00,ขนาดหน้าจอ);
//จุดวาดโดย fbp
long int ตำแหน่ง = 0;
ตำแหน่ง = (x+g_xoffset) * (g_bits_per_pixel/8) +
(y+g_yoffset) * ความยาวเส้น g_line;
*(fbp + ตำแหน่ง + 0) = color_b;
*(fbp + ตำแหน่ง + 1) = color_g;
*(fbp + ตำแหน่ง + 2) = color_r;
//ปิดเฟรมบัฟเฟอร์ fd
ปิด(framebuffer_fd);
เค. การทดสอบ HDMI
• ทดสอบการแสดงผล HDMI
//เปิด file สำหรับการอ่านและการเขียน
framebuffer_fd = เปิด(“/dev/fb2”, O_RDWR);
// รับข้อมูลหน้าจอคงที่
ioctl(เฟรมบัฟเฟอร์_fd, FBIOGET_FSCREENINFO, &finfo)
// รับข้อมูลหน้าจอตัวแปร
ioctl(เฟรมบัฟเฟอร์_fd, FBIOGET_VSCREENINFO, &vinfo)
// คำนวณขนาดหน้าจอเป็นหน่วยไบต์
ขนาดหน้าจอ = vinfo.xres * vinfo.yres * vinfo.bits_per_pixel / 8;
// แมปอุปกรณ์เข้ากับหน่วยความจำ
fbp = (char *)mmap(0, ขนาดหน้าจอ, PROT_READ | PROT_WRITE, MAP_SHARED,
เฟรมบัฟเฟอร์_fd, 0);
// หาว่าต้องใส่พิกเซลไว้ตรงไหนในหน่วยความจำ
memset(fbp, 0x00,ขนาดหน้าจอ);
//จุดวาดโดย fbp
long int ตำแหน่ง = 0;
ตำแหน่ง = (x+g_xoffset) * (g_bits_per_pixel/8) +
(y+g_yoffset) * ความยาวเส้น g_line;
*(fbp + ตำแหน่ง + 0) = color_b;
*(fbp + ตำแหน่ง + 1) = color_g;
*(fbp + ตำแหน่ง + 2) = color_r;
//ปิดเฟรมบัฟเฟอร์ fd
ปิด(framebuffer_fd);
• ทดสอบเสียง HDMI
#เปิดใช้งานเสียง HDMI
echo 0 > /sys/class/graphics/fb2/ว่างเปล่า
#เล่น wav file โดยเสียง HDMI
aplay /home/root/testscript/hdmi/1K.wav -D ปลั๊ก hw:0,0
L. การทดสอบ 3G (ไม่ใช่สำหรับ Android, Android มีการกำหนดค่า 3G ในการตั้งค่า)
• ตรวจสอบสถานะ 3G
#ตรวจสอบสถานะโมดูล UC20 และสถานะซิม
แมว /dev/ttyUSB4 และ
• ทดสอบ 3G
# คำสั่งจะเชื่อมต่อ 3g เข้ากับเครือข่าย
# ตรวจสอบให้แน่ใจว่าใส่ซิมการ์ดถูกต้องและเชื่อมต่อ ANT
pppd เรียก quectel-ppp
echo “ping www.baidu.com เพื่อให้แน่ใจว่าเครือข่ายโอเค”
ปิง www.baidu.com
M. ประเภทตัวเชื่อมต่อออนบอร์ด
ประเภทขั้วต่ออาจเปลี่ยนแปลงได้โดยไม่ต้องแจ้งให้ทราบล่วงหน้า
อ่านเพิ่มเติมเกี่ยวกับคู่มือนี้และดาวน์โหลด PDF:
เอกสาร / แหล่งข้อมูล
![]() |
IBASE IBR215 Series คอมพิวเตอร์ฝังตัวที่ทนทาน [พีดีเอฟ] คู่มือการใช้งาน คอมพิวเตอร์ฝังตัวที่ทนทานซีรีส์ IBR215, ซีรีส์ IBR215, คอมพิวเตอร์ฝังตัวที่ทนทาน, คอมพิวเตอร์ฝังตัว, คอมพิวเตอร์ |