หนึ่งในแนวคิดหลักในการเขียนโปรแกรม Arduino คือฟังก์ชัน ซึ่งช่วยให้คุณเขียนโค้ดที่ใช้ซ้ำได้และสร้างโปรแกรมโมดูลาร์ ฟังก์ชันยังสามารถส่งคืนค่า ซึ่งสามารถใช้ควบคุมโฟลว์ของโปรแกรมหรือทำการคำนวณได้
ในบทความนี้ เราจะสำรวจ Arduino กลับ ฟังก์ชันและวิธีการใช้คืนค่าจากฟังก์ชัน
การกลับมาของ Arduino
อาร์ดุยโน่ กลับ ใช้เพื่อออกจากฟังก์ชันและส่งกลับค่าไปยังผู้โทร ค่าที่ส่งคืนสามารถใช้โดยผู้เรียกเพื่อทำการคำนวณเพิ่มเติมหรือเพื่อควบคุมโฟลว์ของโปรแกรม ฟังก์ชันการส่งคืนเป็นส่วนสำคัญของการเขียนโปรแกรม เนื่องจากช่วยให้คุณนำโค้ดกลับมาใช้ใหม่และสร้างโปรแกรมโมดูลาร์ได้
กลับไวยากรณ์
ใน Arduino ฟังก์ชัน return มีไวยากรณ์ดังต่อไปนี้:
[ return_type ] function_name ( [ พารามิเตอร์ ] ) {
// ร่างกายของฟังก์ชั่น
กลับ [ return_value ] ;
}
ที่ไหน:
return_type เป็นชนิดข้อมูลของค่าที่ส่งกลับ โดยสามารถเป็นประเภทข้อมูลใดก็ได้ เช่น int, float, char, boolean เป็นต้น return_type จะเป็นโมฆะหากไม่มีการส่งคืนค่า
function_name เป็นชื่อที่กำหนดไว้สำหรับฟังก์ชันที่จะคืนค่า
พารามิเตอร์ เป็นค่าที่สามารถส่งไปยังฟังก์ชันได้ พารามิเตอร์เป็นตัวเลือกหากไม่มีพารามิเตอร์ให้เว้นว่างไว้ แต่ละพารามิเตอร์ประกอบด้วยประเภทข้อมูลตามด้วยชื่อพารามิเตอร์ หลายพารามิเตอร์คั่นด้วยเครื่องหมายจุลภาค
return_value คือค่าที่ฟังก์ชันจะส่งกลับ ค่าที่ส่งคืนต้องมีประเภทข้อมูลที่ตรงกันกับ return_type ระบุไว้ภายในฟังก์ชั่น
นี่คือ ตัวอย่าง ของฟังก์ชัน return ใน Arduino ที่รับพารามิเตอร์สองตัวและส่งกลับค่าจำนวนเต็ม:
นานาชาติ บวกเลขสองตัว ( นานาชาติ หมายเลข 1, นานาชาติ หมายเลข 2 ) {นานาชาติ ผลลัพธ์ = หมายเลข 1 + หมายเลข 2 ;
กลับ ผลลัพธ์ ;
}
ในตัวอย่างนี้ ฟังก์ชัน บวกเลขสองตัว นำพารามิเตอร์จำนวนเต็มสองตัว num1 และ num2 มาบวกกัน และส่งกลับผลลัพธ์เป็นค่าจำนวนเต็ม ในการเรียกใช้ฟังก์ชันนี้ในโค้ดของคุณ คุณต้องเขียนดังนี้:
นานาชาติ ก = 10 ;นานาชาติ ข = ยี่สิบ ;
นานาชาติ ค = บวกเลขสองตัว ( ก ข ) ; // c จะเท่ากับ 30
ส่งคืนประเภทข้อมูลใด ๆ โดยใช้ Arduino return
ฟังก์ชัน return ใน Arduino สามารถใช้เพื่อ return ข้อมูลชนิดใดก็ได้ รวมถึง จำนวนเต็ม , ตัวละคร , และ สตริง . ในการส่งคืนค่าจะต้องประกาศประเภทข้อมูลภายในการประกาศฟังก์ชัน ตัวอย่างเช่น หากต้องการคืนค่าจำนวนเต็ม คุณต้องประกาศฟังก์ชันดังนี้
นานาชาติ ฟังก์ชันของฉัน ( ) {// รหัส
กลับ ค่า ;
}
ในตัวอย่างนี้ ฟังก์ชันจะคืนค่า an จำนวนเต็ม ค่า. ในการเรียกใช้ฟังก์ชัน จำเป็นต้องกำหนดค่าส่งคืนให้กับตัวแปรดังต่อไปนี้:
นานาชาติ ผลลัพธ์ = ฟังก์ชันของฉัน ( ) ;ค่าที่ส่งกลับจากฟังก์ชันสามารถใช้ในการคำนวณเพิ่มเติมหรือควบคุมโฟลว์ของโปรแกรมได้ ตัวอย่างเช่น คุณสามารถใช้ค่าส่งคืนเพื่อควบคุมโฟลว์ของคำสั่ง if:
ถ้า ( ผลลัพธ์ == 0 ) {// รหัส
}
โค้ดด้านบนจะทำงานก็ต่อเมื่อเงื่อนไขเป็นจริง หมายความว่าค่าที่ส่งคืนเท่ากับ 0
ส่งคืนสตริงโดยใช้ฟังก์ชันส่งคืน Arduino
การใช้ฟังก์ชัน return ใน Arduino ก็คือการ return a สตริง . ในการส่งคืนสตริง คุณต้องใช้คลาสสตริงใน Arduino ตัวอย่างเช่น:
สตริง myFunction ( ) {กลับ 'สวัสดีชาวโลก!' ;
}
ในตัวอย่างนี้ ฟังก์ชันจะคืนค่า a สตริง ค่า. ในการเรียกใช้ฟังก์ชันกำหนดตัวแปรสำหรับค่าที่ส่งคืน:
ผลลัพธ์ของสตริง = ฟังก์ชันของฉัน ( ) ;ค่าของตัวแปรผลลัพธ์จะเท่ากับ “Hello, World!”
คืนค่าหลายค่าโดยใช้ Arduino Return Function
ฟังก์ชัน return ใน Arduino สามารถใช้เพื่อ return ค่าได้หลายค่า ในการทำเช่นนี้ คุณต้องใช้อาร์เรย์หรือโครงสร้างเพื่อจัดเก็บค่า ตัวอย่างเช่น ในการส่งคืนค่าจำนวนเต็มสองค่าตามไวยากรณ์สามารถใช้:
เป็นโมฆะ ฟังก์ชันของฉัน ( นานาชาติ & ก, นานาชาติ & ข ) {ก = 1 ;
ข = 2 ;
}
ในเรื่องนี้ ตัวอย่าง ฟังก์ชันรับค่าจำนวนเต็มสองค่าเป็นอินพุตและส่งกลับค่าเหล่านั้นไปยังผู้เรียก ในการเรียกใช้ฟังก์ชัน คุณต้องส่งตัวแปรสองตัวไปยังฟังก์ชัน:
นานาชาติ ก ข ;ฟังก์ชันของฉัน ( ก ข ) ;
ที่นี่ a เท่ากับ 1 และ b มีค่า 2
รหัสตัวอย่าง Arduino
นี่คือตัวอย่างโปรแกรมที่สาธิตการใช้ฟังก์ชัน return ใน Arduino:
นานาชาติ บวกเลขสองตัว ( นานาชาติ หมายเลข 1, นานาชาติ หมายเลข 2 ) {นานาชาติ ผลลัพธ์ = หมายเลข 1 + หมายเลข 2 ;
กลับ ผลลัพธ์ ;
}
เป็นโมฆะ ติดตั้ง ( ) {
อนุกรม. เริ่ม ( 9600 ) ;
นานาชาติ ก = 10 ;
นานาชาติ ข = ยี่สิบ ;
นานาชาติ ค = บวกเลขสองตัว ( ก ข ) ;
อนุกรม. พิมพ์ ( 'ผลลัพธ์ของการบวกสองจำนวนคือ: ' + สตริง ( ค ) ) ;
}
เป็นโมฆะ ห่วง ( ) {
// ปล่อยลูปว่างไว้
}
ในโปรแกรมนี้ บวกเลขสองตัว ฟังก์ชันรับพารามิเตอร์จำนวนเต็มสองตัว หมายเลข 1 และ หมายเลข 2 และส่งกลับผลรวมของตัวเลขเหล่านั้นเป็นจำนวนเต็ม ฟังก์ชันการตั้งค่าเริ่มต้นการสื่อสารแบบอนุกรมและเรียกใช้ฟังก์ชัน addTwoNumbers โดยส่งค่า 10 และ 20 เป็นพารามิเตอร์ ผลลัพธ์จะถูกเก็บไว้ใน ค ตัวแปรแล้วพิมพ์ไปยังจอภาพอนุกรมโดยใช้ Serial.println การทำงาน. ในฟังก์ชันลูป ไม่มีโค้ด แต่คุณสามารถเพิ่มโค้ดของคุณเองได้หากจำเป็น
นี่เป็นเพียงตัวอย่างหนึ่งของวิธีใช้ฟังก์ชัน return ใน Arduino คุณสามารถใช้ฟังก์ชัน return เพื่อส่งกลับค่าจากฟังก์ชันได้หลายวิธี ขึ้นอยู่กับความต้องการของคุณ
เอาต์พุต
ผลรวมของตัวเลขสองตัวคือ 30 จะแสดงในเอาต์พุตมอนิเตอร์อนุกรม
บทสรุป
อาดูรโน่ กลับ ฟังก์ชันมอบวิธีที่มีประสิทธิภาพและยืดหยุ่นในการส่งคืนค่าจากฟังก์ชันไปยังผู้เรียก ฟังก์ชันส่งคืนสามารถใช้เพื่อส่งคืนข้อมูลชนิดใดก็ได้ รวมทั้งจำนวนเต็ม อักขระ และสตริง ฟังก์ชัน return ช่วยให้คุณสามารถนำรหัสกลับมาใช้ใหม่และสร้างโปรแกรมโมดูลาร์ที่มีประสิทธิภาพและสามารถอ่านได้มากขึ้น