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

13
ตั้งโปรแกรมเครื่องจักรประจำวันได้อย่างไร?
มีการตั้งโปรแกรมเครื่องจักรในชีวิตประจำวัน (ไม่มากคอมพิวเตอร์และอุปกรณ์มือถือเป็นเครื่องใช้นาฬิกาดิจิตอล ฯลฯ ) เป็นอย่างไร โค้ดประเภทใดที่ใช้ในการเขียนโปรแกรมของเครื่องจำหน่าย Coca-Cola เครื่องชงกาแฟของฉันยอมรับเวลาที่ตั้งโปรแกรมไว้ล่วงหน้าอย่างไรและเริ่มต้มกาแฟชั่วโมงต่อมาเมื่อถึงเวลานั้น เครื่องประเภทนี้มีระบบปฏิบัติการอยู่ภายในหรือไม่หรือเป็นสิ่งที่พื้นฐานกว่านี้หรือไม่ พวกเขาเขียนใน Assembly, C หรือภาษาอื่น ๆ บ้างไหม? และฉันต้องการค้นหาทรัพยากรบางอย่างที่แสดงรายการระบบปฏิบัติการเหล่านี้หรือระบบโค้ดพื้นฐานอาจเป็นไปได้ว่ามีซอร์สโค้ดถ้าเป็นไปได้ ถ้าใครรู้เกี่ยวกับทรัพยากรเช่นนั้น (การค้นหาไม่ได้ผลอะไรเลยสำหรับฉัน) นั่นจะยอดเยี่ยมมาก

5
ผลการดำเนินงานระดับบิตในขนาดตัวแปรที่ไม่คาดคิด
บริบท เรากำลังพอร์ตโค้ด C ที่คอมไพล์แล้วโดยใช้คอมไพเลอร์ C แบบ 8 บิตสำหรับไมโครคอนโทรลเลอร์ PIC สำนวนทั่วไปที่ใช้เพื่อป้องกันตัวแปรโกลบอลที่ไม่ได้ลงชื่อ (ตัวอย่างเช่นตัวนับข้อผิดพลาด) จากการย้อนกลับเป็นศูนย์มีดังต่อไปนี้: if(~counter) counter++; ผู้ประกอบการระดับบิตที่นี่กลับค่าบิตทั้งหมดและคำสั่งเป็นจริงหากcounterน้อยกว่าค่าสูงสุด ที่สำคัญทำงานได้โดยไม่คำนึงถึงขนาดของตัวแปร ปัญหา ตอนนี้เรากำลังกำหนดเป้าหมายหน่วยประมวลผล ARM แบบ 32 บิตโดยใช้ GCC เราสังเกตเห็นว่ารหัสเดียวกันให้ผลลัพธ์ที่แตกต่าง เท่าที่เราสามารถบอกได้ดูเหมือนว่าการทำงานส่วนเสริม bitwise คืนค่าที่มีขนาดแตกต่างจากที่เราคาดไว้ ในการทำซ้ำสิ่งนี้เรารวบรวมใน GCC: uint8_t i = 0; int sz; sz = sizeof(i); printf("Size of variable: %d\n", sz); // Size of variable: 1 sz = …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.