สารบัญ:

วิธีเริ่มต้นใช้งาน IDE สำหรับ NRF51822, ARM® KEIL MDK V5 + ST-Link: 6 ขั้นตอน
วิธีเริ่มต้นใช้งาน IDE สำหรับ NRF51822, ARM® KEIL MDK V5 + ST-Link: 6 ขั้นตอน

วีดีโอ: วิธีเริ่มต้นใช้งาน IDE สำหรับ NRF51822, ARM® KEIL MDK V5 + ST-Link: 6 ขั้นตอน

วีดีโอ: วิธีเริ่มต้นใช้งาน IDE สำหรับ NRF51822, ARM® KEIL MDK V5 + ST-Link: 6 ขั้นตอน
วีดีโอ: nRF51822 - Get started - nordicsemi.com, Stlink v2 and Keil 2024, กันยายน
Anonim
วิธีเริ่มต้นใช้งาน IDE สำหรับ NRF51822, ARM® KEIL MDK V5 + ST-Link
วิธีเริ่มต้นใช้งาน IDE สำหรับ NRF51822, ARM® KEIL MDK V5 + ST-Link
วิธีเริ่มต้นใช้งาน IDE สำหรับ NRF51822, ARM® KEIL MDK V5 + ST-Link
วิธีเริ่มต้นใช้งาน IDE สำหรับ NRF51822, ARM® KEIL MDK V5 + ST-Link

ภาพรวม

เมื่อฉันเริ่มพัฒนาแอปพลิเคชัน nRF51822 สำหรับโครงการงานอดิเรกของฉัน ฉันพบว่าไม่มีข้อมูลที่เป็นระเบียบในหัวข้อนี้ ในที่นี้ ข้าพเจ้าอยากทราบว่าข้าพเจ้าได้ผ่านอะไรมาบ้าง

สิ่งนี้อธิบายสิ่งที่ทำให้ฉันต้องลำบากในการนำแอพตัวอย่าง "Softdevice" ไปใช้กับบอร์ด การเขียนโปรแกรมของแอปพลิเคชัน ble_app_hrm ซึ่งมาจาก SDK ของ Nordic นำเสนอที่นี่

และดังที่แสดงในภาพแรก บอร์ด ST Nucleo-F401RE, Waveshare BLE400 และ nRF51822 ถูกใช้แล้ว แต่ไม่จำเป็นต้องใช้ BLE400 เท่าที่คุณสามารถเชื่อมต่อ ST-Link และบอร์ด nRF51822 ของคุณ

และความได้เปรียบของการใช้ ST-Link บน Nucleo ก็ถูกนำมาใช้เพื่อจ่ายไฟ 3.3 หรือ 5V ให้กับบอร์ด nRF51822 ดังนั้น อาจต้องเตรียมแหล่งจ่ายไฟเมื่อใช้อุปกรณ์ ST-Link เนื่องจากอุปกรณ์ ST-Link บางตัวดูเหมือนจะไม่มีความสามารถในการเปิดเครื่องไมโครคอนโทรลเลอร์

ฉันพบว่าบอร์ด nRF51822 ของฉันคือ "nRF51822_xxAA" ซึ่งมี 256kB ROM (ขนาดหน่วยความจำโปรแกรม) และ RAM 16kB (ภาพที่ 2)

ขั้นตอนประกอบด้วยขั้นตอนต่อไปนี้

  1. การติดตั้งซอฟต์แวร์
  2. การเชื่อมต่อฮาร์ดแวร์
  3. การตั้งค่าซอฟต์แวร์
  4. รวบรวมและโหลด
  5. เรียกใช้แอพบนโทรศัพท์มือถือ (Android)

ข้อมูลทั้งหมดได้รับ ณ วันที่ 28 กันยายน 2018

ขั้นตอนที่ 1: การติดตั้งซอฟต์แวร์

การติดตั้งซอฟต์แวร์
การติดตั้งซอฟต์แวร์
การติดตั้งซอฟต์แวร์
การติดตั้งซอฟต์แวร์

ดาวน์โหลด MDK-ARM v5.26 หรือใหม่กว่าจาก ARM KEIL และติดตั้งใน Windows 10 เมื่อติดตั้งแล้ว Keil µVision IDE จะถูกติดตั้งด้วย ARM CMSIS และอื่นๆ แต่ระบบไม่ได้ติดตั้ง Nordic SDK ใดๆ

เมื่อ Keil µVision IDE เริ่มทำงาน Pack Installer จะเริ่มทำงาน ใน Pack Installer สามารถติดตั้งแพ็คเกจซอฟต์แวร์ที่จำเป็นสำหรับบอร์ดเป้าหมายในการพัฒนาได้

ดูภาพที่ 1

เป็นความคิดที่ดีที่จะคลิกปุ่ม "ตรวจสอบการอัปเดต" เพื่ออัปเดต Pack Installer ล่วงหน้า

ในแท็บอุปกรณ์ ค้นหาและเลือกอุปกรณ์เป้าหมาย "nRF51822_xxAA" เพื่อให้แพ็คเกจที่เกี่ยวข้องปรากฏในแท็บตัวอย่าง

ในคำแนะนำนี้ ฉันเลือก "ble_app_hrs_s130_pca10028 (nRF51 PCA10028)" อย่าลืมยกเลิกการเลือก "แสดงตัวอย่างจากแพ็กที่ติดตั้งเท่านั้น" เพื่อค้นหาโปรเจ็กต์ในแท็บตัวอย่าง เนื่องจากตอนนี้การติดตั้งยังไม่เสร็จสิ้น

คลิกปุ่ม "ติดตั้ง" เพื่อเริ่มแกะ (และคัดลอก) โครงการตัวอย่าง ระหว่างการคัดลอกโปรเจ็กต์ไปยังไดเร็กทอรีที่คุณกำหนดเอง ระบบจะขอให้คุณติดตั้ง Software Pack อื่นๆ ที่โปรเจ็กต์ต้องการสองสามครั้ง

ดูภาพที่ 2

หลังจากการติดตั้งเสร็จสิ้น µVision จะเปิดโครงการ

โปรดทราบว่าโครงการดั้งเดิมอยู่ใน C:\Keil_v5\ARM\PACK\NordicSemiconductor\nRF_Examples\11.0.0-2.alpha\ble_peripheral\ble_app_hrs\pca10028\s130\arm5

ขั้นตอนที่ 2: การเชื่อมต่อฮาร์ดแวร์

การเชื่อมต่อฮาร์ดแวร์
การเชื่อมต่อฮาร์ดแวร์

ที่นี่ รูปภาพแสดงไดอะแกรมการเดินสายจริง

รูปภาพแสดงวิธีการเชื่อมต่อของ ST-Link และ BLE400 กับบอร์ด nRF51822 ต้องใช้สายไฟเพียง 4 เส้นตามตารางต่อไปนี้

ST-Link (นิวคลีโอ) - nRF51822

+5V - USB5V

GND - GND

SWCLK - SWDCLK

SWDIO - SWDIO

ในการเลือก ST-Link ต้องเปิดจัมเปอร์ "CN2" ตามที่แสดงในแผนภาพ

หมายเหตุ: แทนที่จะจ่ายไฟ 3.3V ก็ใช้งานได้เช่นกัน

ขั้นตอนที่ 3: การตั้งค่าซอฟต์แวร์

การตั้งค่าซอฟต์แวร์
การตั้งค่าซอฟต์แวร์
การตั้งค่าซอฟต์แวร์
การตั้งค่าซอฟต์แวร์
การตั้งค่าซอฟต์แวร์
การตั้งค่าซอฟต์แวร์
การตั้งค่าซอฟต์แวร์
การตั้งค่าซอฟต์แวร์

ต้องปฏิบัติตามขั้นตอนในส่วนนี้ไม่เช่นนั้นจะไม่ได้รับทุกที่

ดูภาพที่ 1

(1) ก่อนอื่น เลือก "nrf51422_xxac_s130" จากเมนูแบบเลื่อนลง "เลือกเป้าหมาย" ในแถบเครื่องมือของ µVision ชื่อจะแตกต่างจากอุปกรณ์เป้าหมาย แต่จะเกิดจากความเข้ากันได้

ดูภาพที่ 2

(2) ในหน้าต่างโครงการ คลิกซ้ายที่ "main.c" ในโฟลเดอร์แอปพลิเคชัน และเลือก "แปล main.c" ในเมนูบริบท เพื่อรวมส่วนหัวที่จำเป็น (ภาพที่ 3) โปรดทราบว่าต้องเลือก "nrf51422_xxac_s130" ณ จุดนี้ มิฉะนั้นการดำเนินการนี้จะไม่ทำงาน

(3) คลิก "ตัวเลือกสำหรับเป้าหมาย" เพื่อกำหนดค่า IDE (ภาพที่ 1) จากการดำเนินการก่อนหน้านี้ "Translate" ได้ตั้งค่าไมโครคอนโทรลเลอร์เป้าหมายอย่างถูกต้อง ยืนยันว่า IROM1:0x1B000 ใน Start, 0x25000 ใน Size และ IRAM:0x20001F00 ใน Start, 0x6100 ใน Size ตามที่เห็นในแท็บ Target (ภาพที่ 4)

ดูภาพที่ 5

(4) ในแท็บ Debug เลือก "ST-Link Debugger" จากเมนูแบบเลื่อนลง "ใช้:"

(5) คลิกปุ่ม "การตั้งค่า" เพื่อเปิดหน้าต่าง "การตั้งค่าไดรเวอร์เป้าหมาย Cortex-M" ยืนยันว่าแท็บ Debug ระบุว่าไมโครคอนโทรลเลอร์เป้าหมายเชื่อมต่ออยู่ (ภาพที่ 6) หากไม่เป็นเช่นนั้น ให้กลับไปที่ส่วนการเชื่อมต่อฮาร์ดแวร์แล้วตรวจสอบการเชื่อมต่ออีกครั้ง

ดูภาพที่ 7

(6) ในแท็บ Flash Download ให้คลิกปุ่ม "Add" ใน Programming Algorithm และเพิ่ม "nRF51xxx External Connectivity Board" นอกจากนี้ สามารถตรวจสอบ "รีเซ็ตและเรียกใช้" เพื่อให้ ST-Link รีเซ็ตและเรียกใช้โปรแกรมได้

คลิกตกลงและปิดหน้าต่าง "ตัวเลือกสำหรับเป้าหมาย"

(7) ถัดไป เลือก "flash_s130_nrf51_x.x.x-x-x_softdevice" จากเมนูแบบเลื่อนลง "เลือกเป้าหมาย" ในแถบเครื่องมือ

(8) คลิก "ตัวเลือกสำหรับเป้าหมาย" ในแท็บ Debug ให้เลือก "ST-Link Debugger" จากเมนูแบบเลื่อนลง "ใช้:"

(9) คลิกปุ่ม "การตั้งค่า" เพื่อเปิดหน้าต่าง "การตั้งค่าไดรเวอร์เป้าหมาย Cortex-M" ตรวจสอบให้แน่ใจอีกครั้งว่าแท็บ Debug ระบุว่าอุปกรณ์เป้าหมายเชื่อมต่ออยู่ หากไม่เป็นเช่นนั้น ให้กลับไปที่ส่วนการเชื่อมต่อฮาร์ดแวร์แล้วตรวจสอบการเชื่อมต่ออีกครั้ง

(10) ในแท็บ Flash Download ให้คลิกปุ่ม "Add" ใน "Programming Algorithm" และเพิ่ม "nRF51xxx External Connectivity Board" และสามารถเลือก "Erase Full Chip" ใน "Download Function" เพื่อให้ ST-Link ลบหน่วยความจำของบอร์ดเมื่อเริ่มกะพริบแทนการลบด้วยตนเอง

คลิกตกลงและปิดหน้าต่าง "ตัวเลือกสำหรับเป้าหมาย"

ตอนนี้คุณพร้อมที่จะคอมไพล์โค้ดและแฟลช nRF51822 แล้ว

โปรดทราบว่าแม้ว่าแท็บอุปกรณ์ใน "ตัวเลือกสำหรับเป้าหมาย" จะแสดงว่าเลือก nRF51422_xxAC แล้ว แต่ก็ใช้งานได้ดี

ขั้นตอนที่ 4: รวบรวมและโหลด

Image
Image
รวบรวมและโหลด
รวบรวมและโหลด
รวบรวมและโหลด
รวบรวมและโหลด
รวบรวมและโหลด
รวบรวมและโหลด

ก่อนอื่น เลือก "flash_s130_nrf51_x.x.x-x-x_softdevice" จากเมนูแบบเลื่อนลง "เลือกเป้าหมาย" ในแถบเครื่องมือ แล้วคลิกปุ่มดาวน์โหลดเพื่อแฟลชหน่วยความจำ คุณเห็น "ยืนยันตกลง" หากการดาวน์โหลดสำเร็จ (ภาพที่ 1 และ 2)

จากนั้นเลือก "nrf51422_xxac_s130" จากเมนูแบบเลื่อนลง "เลือกเป้าหมาย" และคลิกปุ่มสร้างเพื่อคอมไพล์โค้ด คุณเห็นข้อความตามที่แสดงในภาพที่ 3

จากนั้นให้คลิกปุ่มดาวน์โหลดเพื่อแฟลชหน่วยความจำ คุณเห็นข้อความเดียวกับภาพที่ 4

หลังจากเสร็จสิ้นการกะพริบ คุณจะเห็น LED3 กะพริบ (วิดีโอ)

ตอนนี้ ติดตั้งแอพในโทรศัพท์มือถือของคุณ คุณจะเห็นว่าโปรแกรมทำอะไร

ขั้นตอนที่ 5: เรียกใช้แอพบนโทรศัพท์มือถือ

Image
Image

ติดตั้งแอพ "nRF Toolbox for BLE" จาก Nordic Semiconductor ในโทรศัพท์มือถือหรือแพด (ภาพที่ 1)

เริ่มต้น HRM และเชื่อมต่อ nRF51822 (วิดีโอ)

ขั้นตอนที่ 6: สรุป

มีบางประเด็นในคำแนะนำนี้

  1. จ่ายไฟให้กับบอร์ด nRF51822 เพื่อเชื่อมต่อ ST-Link
  2. แปลไฟล์ main.c ก่อนคอมไพล์และดาวน์โหลดโค้ด หากโปรเจ็กต์ตัวอย่างถูกคัดลอกในไดเร็กทอรีอื่นที่ไม่ใช่ไดเร็กทอรีดั้งเดิม
  3. ตั้งค่า "nRF51xxx External Connectivity Board" ในส่วนอัลกอริธึมการเขียนโปรแกรม

ฉันหวังว่าคำแนะนำนี้จะช่วยให้ผู้ที่ชื่นชอบงานอดิเรกอย่างฉัน