หัวข้อ: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: kiano♥ ที่ ตุลาคม 21, 2009, 10:58:35 pm (http://i962.photobucket.com/albums/ae101/kiano555/leksound-IR/ir001.jpg)
คุณ...ไปปิดไฟสิ จะนอนแล้ว... คุณนั่นแหละ ไปปิดที... ต่อไปไม่ต้องเกี่ยงกันเรื่องปิดไฟแล้วครับ ถ้าทำโครงงานนี้ "สวิทช์ปิด-เปิดไฟด้วยรีโมทคอนโทรล" เป็นโครงงาน PIC Microcontroller มีคุณสมบัติดังนี้คือ - ต่อเอาพุตได้ 3 ช่อง กำลังไฟฟ้าโหลด 500 วัตต์ต่อช่อง - ควบคุมการทำงานด้วยรีโมททีวี วีซีดีทั่วไป โดยมีโปรแกรมจำค่าปุ่มกดที่รีโมท - มีสวิทช์ควบคุมในตัว ในกรณีไม่ใช้รีโมท - ติดตั้งง่าย ใช้ใส่เข้าไปแทนที่สวิทช์ธรรมดาได้เลย การทำงานของวงจร ทุกอย่างจะถูกควบคุมการทำงานด้วยไอซี Microcontroller เบอร์ PIC12F629 หรือเรียกสั้นๆว่า MCU โดย IR Module จะทำหน้าที่รับสัญญาณรีโมทที่ส่งมาจากตัวรีโมท แล้วส่งไปประมวลผลคำสั่งภายใน MCU เช่นเดียวกันกับ SW จะรับคำสั่งจากการกดของผู้ใช้งาน แล้วส่งผลการกดสวิทช์ไปประมวลคำสั่งภายใน MCU ซึ่งจะได้ดูรายละเอียดการประมวลผลคำสั่งในหัวข้ออธิบายการทำงานของโค๊ดโปรแกรม หลักจากประมวลผลคำสั่งแล้ว MCU จะส่งคำสั่งปิด-เปิดไฟไปที่ MOC3063 เพื่อทริกให้ไตรแอคทำงาน หรือหยุดทำงานแล้วแต่คำสั่งทีรับมาจาก MCU และไตรแอคจะจ่ายไฟให้กับหลอดไฟต่อไป PZ คือลำโพงเปียซโซ โดยทุกครั้งที่ MCU สั่งงานไปที่ออปโต้จะมีเสียง บี๊ป เพื่อให้รู้ถึงสถานะการทำงาน (http://i962.photobucket.com/albums/ae101/kiano555/leksound-IR/IR_Circuit_zps449cddb2.jpg) รูปด้านล่างจะเป็นลายแผ่น PCB และการวางอุปกรณ์ลงบนแผ่น ในการวางอุปกรณ์จะใ่ส่ด้านที่เป็นทองแดงเลย ต้องดูขาของอุปกรณ์ให้แน่ในก่อนที่จะบัดกรี เพราะวงจรเกียวข้องกับไฟ 220v โดยตรง ทำให้เกิดความเสียหายได้ง่ายถ้าใส่ผิด (http://i962.photobucket.com/albums/ae101/kiano555/leksound-IR/pcbsw_remote_part_zps5b0356ab.png) (http://i962.photobucket.com/albums/ae101/kiano555/leksound-IR/pcbsw_remote-Model-0.png) รูปด้านล่างแสดงไดอะแกรมการต่อสวิทช์รีโมทเข้ากับหลอดไฟ 3 หลอด (http://i962.photobucket.com/albums/ae101/kiano555/leksound-IR/ir-004.png) รูปแสดงหลังจากติดตั้งสวิทช์รีโมทเสร็จแล้ว (http://i962.photobucket.com/albums/ae101/kiano555/leksound-IR/sw-001_zpsada588ba.jpg) (http://i962.photobucket.com/albums/ae101/kiano555/leksound-IR/sw-006_zpsb66861ff.jpg) (http://i962.photobucket.com/albums/ae101/kiano555/leksound-IR/sw-005_zps1cdda88a.jpg) (http://i962.photobucket.com/albums/ae101/kiano555/leksound-IR/sw-004_zps42b510ca.jpg) (http://i962.photobucket.com/albums/ae101/kiano555/leksound-IR/ir006.jpg) (http://i962.photobucket.com/albums/ae101/kiano555/leksound-IR/ir007.jpg) สำหรับฝาปิดของสวิทช์ ใช้ฝาทึบทัวไปมาเจาะรูปสำหรับรับแสงอินฟาเรด แล้วตัดส่วนนูนของหลอด LED 3 มิลลิเมตรมาติดไว้ที่รูดังรูปด้านล่าง (http://i962.photobucket.com/albums/ae101/kiano555/leksound-IR/ir008.jpg) (http://i962.photobucket.com/albums/ae101/kiano555/leksound-IR/ir009.jpg) หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: m077531424 ที่ ตุลาคม 22, 2009, 04:31:09 pm พี่สนใจทำเป็นชุดคิทขายไหมครับผมสนใจมากๆๆครับ
หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: kiano♥ ที่ ตุลาคม 22, 2009, 05:48:49 pm วันนี้จะมาดูว่า ไอซีอ่านโค๊ดที่ส่งมาจากรีโมทได้อย่างไรนะครับ
ก่อนอื่นเราต้องรู้ก่อนว่า รีโมทนั้น ส่งอะไรออกมา จึงจะเขียนโปรแกรมให้อ่านโค๊ด แล้วเอาโค๊ดนั้นมาใช้งานได้ การดูว่า รีโมทส่งอะไรมานั้น ก็อาจจะต่อสโคป กับตัว IR Module ส่วนผมใช้วิธีต่อ PIC Kit-2 โดยใช้ฟังก์ชั่น Logic Analyzer ตัวที่ทำเป็นตัวอย่าง เป็นรีโมทวีซีดี ของจีนแดงทั่วไปครับ แล้วเราได้อะไร มาดูกันครับ ... ตามรูปแนบด้านล่าง จะเห็นว่า รีโมททุกตัว จะส่งสัญญาณออกมาคล้ายๆกันครับ Start Code เป็นสัญญาณอย่างแรกที่ส่งออกมาเลย โดยจะมีสองสถานะ คือ เป็น low 8ms แล้วตามด้วย Hight 4.5ms Device Code สำหรับรีโมทตัวนี้ จะมีทั้งหมด 16 บิต ถ้าจะแปลตามตัวก็คือ เป็นรหัสของรีโมทตัวนั้นๆ คือถ้าเรากดปุ่มไหนของรีโมท มันก็จะส่งสัญญาณแบบนี้ออกมาก่อนครับ หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: m077531424 ที่ ตุลาคม 22, 2009, 06:36:21 pm พี่ครับผมPMไม่ได้ไม่ทราบว่าเป็นอะไร
รบกวนพี่PMราคามาละกันครับ แล้วจะทำให้มีหลายๆๆช่องได้ไหมครับ(มากกว่า3) ได้ครับ ทำกี่ช่องก็ได้ -ต้องแก้ไขวงจรใหม่ -ต้องแก้ไขโค๊ดใหม่ kiano หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: kiano♥ ที่ ตุลาคม 22, 2009, 08:05:20 pm จากรูปด้านบน จะเห็นแล้วนะครับ ว่าสัญญาณที่ส่งมานั้น ระหว่าง Logic 0 กับ Logic 1 นั้น มีอะไรที่ต่างกัน
ครับ อธิบายเพิ่มคือ 0 จะประกอบด้วย คาบเวลาที่เป็น low 500us และคาบเวลาที่เป็น hi 500us 1 จะประกอบด้วย คาบเวลาที่เป็น low 500us และคาบเวลาที่เป็น hi 1800us จากรูปด้านล่าง เป็นโค๊ดที่ส่งมาจากรีโมท ยกตัวอย่าง 5 ปุ่มครับ จะเห็นได้ว่า 16 บิตแรก จะเหมือนกันทุกปุ่ม นั่นคือ device id data นั่นเอง ต่อมา 16 บิตด้านหลัง จะเป็น bottom data ซึ่งแต่ละปุ่มนั้น จะมีโค๊ดที่ส่งออกมาไม่เหมือนกัน และเราจะใช้ส่วนที่ไม่เหมือนกันนี่เองครับ มาใช้งาน ในโครงงานของเรา ไม่รู้ผมเรียกชื่อต่างๆถูกหรือไม่นะครับ จำไม่ค่อยได้ครับ ว่าเค้าเรียกว่าอะไร ดูรูปอธิบายแล้วอย่างเพิ่งตาลายนะครับ ผมทำเองผมยังตาลายเลย กระทู้ต่อไปจะเป็นโฟว์ชาร์ทการทำงานของโปรแกรมครับ กระทู้ต่อไปสงสัยต้องทำรูปเหนื่อยเลยครับ รูปประกอบ http://upload.mwake.com/v3.php?id=AO/FnkE0Liqej.jpg หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: ถาวร-LSVteam ที่ ตุลาคม 22, 2009, 08:10:33 pm บอกขายได้เลยครับ ทางเว็บสนับสนุน คนที่คิดค้นทำ ครับ
ชุดแรกเป็นเฮดพัลท์ จะบอกชนิดของอุปกรณ์ IRว่าเป็นคำสั่งของอะไร เช่น TV VDO หรือแอร์ ฯ ชุดที่2 น่าจะเป็นอีควอไรเซอร์พั้ลท์ เป็นเหมือนการ์ด กั้น คำสั่ง ซึ่งเป็นชุดที่3 ถ้าผมจำไม่ผิดนะครับเพราะว่าเรียนมาก็20ปีเข้าไปแล้ว อาจจะจำผิดมั่งก็ได้ จะหาหนังสือกลับมาอ่านคงรื้อบ้านกันไม่น้อย หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: ถาวร-LSVteam ที่ ตุลาคม 22, 2009, 10:06:22 pm แผ่นปริ้นจ้างทำเขาคิดเป็นตารางนิ้วครับ ผมว่าแรกๆทำเองลดต้นทุนครับ ใช้แผ่นอีพร๊อกซี่ ใช้ดรายฟลีม หัดสักพักก็จะออกมาสวยครับ ก็เหลือแต่เคลือบสีปริ้น ก็จะออกมาสวยแล้วครับ คนมีความคิดสร้างสรรค์น่าสนับสนุนครับ
ควรหารีโหมดราคาถูกตัวละ20กว่าบาทมาใช้ครับ เพราะเจอต่างยี่ห้อ พั้ลท์คำสั่งมันจะไม่ตรงกันครับ หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: kiano♥ ที่ ตุลาคม 23, 2009, 01:27:29 am ขอต่ออีกนิดครับ...
มาดูโฟว์ชาร์ทการทำงานของโปรแกรมกันครับ จะว่าในส่วนของโปรแกรม main ก่อนเลยครับ ดูตามภาพแล้ว ก็ไม่ได้มีออะไรมากมายครับ คือ ถ้าไม่มีการกดสวิทช์ หรือกดรีโมท โปรแกรมจะวนภายในลูป main เพื่อคอยตรวจสอบ ว่ามีการกด สวิทช์ หรือกดรีโมทหรือไม่ แค่นั้นเองครับ แต่ถ้ามีการกดรีโมท มันก็จะกระโดดไปทำงาน ในส่วนของโปรแกรม อ่านค่ารีโมท ถ้ากดสวิทช์ มันก็จะกระโดดไปทำงานในส่วนของโปรแกรมอ่านค่าสวิทช์ หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: kiano♥ ที่ ตุลาคม 23, 2009, 01:36:55 am ดูโฟว์ชาร์ท แล้วมาดูโค๊ดกันเลยครับ ...
MAIN: DECFSZ STACK_0, F GOTO $-1 BTFSS IR GOTO READ_IR DECFSZ STACK_0, F GOTO $-1 BTFSC SW GOTO READ_SW GOTO MAIN นี่เลยครับ ไม่มีอะไรมากมาย ในโค๊ดส่วนนี้ แต่จะเห็นว่ามีอะไรเพิ่มเข้ามานิดหน่อย คือ หน่วงเวลาครับ ผมให้มันหน่วงเวลาสักนิด เพิ่อป้องกันการทำงานพลาดจาก นอยส์ที่เข้ามาทาง AC Line นั่นเองครับ มีส่วนแตกต่างกันระหว่างการกดสวิทช์ กับการกดรีโมทคือ ปรกติ ถ้าไม่มีการกดสวิทช์ ขาอินพุตของสวิทช์ จะเป็น 0 ถ้ากดจะเป็น 1 แต่ขา อินพุตของ IR จะกลับกันกับสวิทช์ครับ คือปรกติถ้าไม่กดรีโมท จะอยู่ในสถานะ 1 เนื่องจาก อาร์พูลอัพที่ต่ออยู่กับขาอินพุตนั่นเองครับ ปล.นี่เป็นโครงงานชิ้นแรกที่เขียนด้วยโค๊ด asm จริงๆครับ ถ้าท่านใดมีข้อเสนอแนะ หรือความคิดเห็นเพิ่มเติม ก็แทรกได้เลยนะครับ หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: kiano♥ ที่ ตุลาคม 23, 2009, 01:50:18 am ต่อมาเป็นโฟว์ชาร์ทการทำงานของส่วนอ่านค่าจากการกดสวิทช์
ในส่วนนี้ จะทำงานโดยการอ่านว่า สวิทช์ถูกกดกี่ครั้ง ในเวลาที่กำหนดไว้ ซึ่งจะนำค่าที่อ่านได้จากการกด ไปทำงานแบบนี้ครับ กด 1 ครั้ง ให้สั่ง ปิด-เปิด หลอดไฟหลอดที่ 1 กด 2 ครั้ง ให้สั่ง ปิด-เปิด หลอดไฟหลอดที่ 2 กด 3 ครั้ง ให้สั่ง ปิด-เปิด หลอดไฟหลอดที่ 3 กด 6 ครั้ง ตั้งค่าปุ่มกดที่รีโมท ปุ่มที่ 1 ที่ควบคุมการทำงาน ให้ปิดหลอดไฟทุกหลอด หรือทุก CH นั่นเอง กด 7 ครั้ง ตั้งค่าปุ่มกดที่รีโมท ปุ่มที่ 2 ที่ควบคุมการทำงาน ปิด-เปิด หลอดไฟหลอดที่ 1 กด 8 ครั้ง ตั้งค่าปุ่มกดที่รีโมท ปุ่มที่ 3 ที่ควบคุมการทำงาน ปิด-เปิด หลอดไฟหลอดที่ 2 กด 9 ครั้ง ตั้งค่าปุ่มกดที่รีโมท ปุ่มที่ 4 ที่ควบคุมการทำงาน ปิด-เปิด หลอดไฟหลอดที่ 3 กด 10 ครั้ง ตั้งค่าปุ่มกดที่รีโมท ปุ่มที่ 5 ที่ควบคุมการทำงาน ให้เปิดหลอดไฟทุกหลอด หรือทุก CH นั่นเอง จะเห็นว่า ฟังก์ชั่นของสวิทช์ จะมีส่วนเกี่ยวข้องกับฟังก์ชั่นอ่านค่า จากรีโมทด้วย ตัวอย่าง ถ้ากดสวิทช์ 6 ครั้ง มันก็จะไปรอรับสัญญาณจากรีโมท เพื่อรอให้เรากดปุ่ม ที่ต้องการสั่งงานให้ปิดหลอดไฟทุกหลอด หลังจากได้ค่าที่ส่งมาจากรีโมทแล้ว มันจะสั่งให้ eeprom เก็บค่าที่อ่านได้ เพื่อการใช้งานครั้งต่อไป ค่าที่ตั้งเอาไว้จะได้ไม่ลบหาย แม้เวลาไฟดับ ด้วยเหตุที่ต้องเกี่ยวข้องกับฟังก์ชั่น IR ด้วย จึงต้องเพิ่มทางเลือกให้มันครับ โดยการกำหนดตัวแปรที่ชือ case ให้มัน โดยตัว case นี้จะเป็นตัวกำหนดว่า หลังจากอ่านค่า IR เสร็จแล้ว ให้ไปทำงานที่ส่วนไหนต่อ เพื่อเข้าใจง่ายขึ้น ดูโฟว์ชาร์ทด้านล่างประกอบเลยครับ เป็นโฟว์ชาร์ทการทำงานรวมของฟังก์ชั่นสวิทช์ หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: kiano♥ ที่ ตุลาคม 23, 2009, 06:45:33 pm หลังจากดูแล้วว่าฟังก์ชั่นสวิทช์มีการทำงานโดยรวมเป็นอย่างไร
ต่อไปเราจะมาดูรายละเอียดของฟังก์ชั่นนี้ ว่าแต่ละส่วนนั้นทำงานอย่างไร READ_SW: CLRF SW_DATA CALL BEEP INCF SW_DATA, F MOVLW 0X50 MOVWF STACK_4 DECFSZ STACK_3, F GOTO $-1 DECFSZ STACK_4, F GOTO $-3 BTFSC SW ;ถ้ายังกดค้างอยู่ ให้กลับไป delay GOTO $-7 ตามโค๊ดด้านบนอธิบายได้ว่า หลังจากที่สวิทช์ถูกกดไป 1 ครั้งจากฟังก์ชั้นเมน แล้วยังไม่มีการปล่อยสวิทช์ ตัวแปรที่เก็บค่าการกดสวิทช์จะถูกเพิ่มขึ้น 1 ค่า แล้วจะหน่วงเวลาก่อน 20ms เพื่อรอการปล่อยมือจากสวิทช์ แต่ถ้าหน่วงเวลาแล้ว ก็ยังไม่มีการปล่อยมืออีก จะกลับไปหน่วงเวลาต่อ ซึ่งโฟว์ชาร์ทการทำงาน ดูได้จะรูปแนบด้านล่างครับ จะเห็นภาพการทำงานที่ชัดเจนขึ้น หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: kiano♥ ที่ ตุลาคม 23, 2009, 07:09:16 pm หลังจากที่มีการปล่อยสวิทช์แล้ว โปรแกรมจับเวลาก็จะเริ่มจับเวลา
ว่า ภายในเวลา 3 วินาทีนั้น มีการกดสวิทช์ไปกี่ครั้ง โปรแกรมจับเวลาจะเริ่มจากแถว SW_L1: ไปจนถึง แถว SW_L2: MOVLW 0X07 ;จับเวลา 3 sec มีการกดกี่ครั้ง MOVWF STACK_2 SW_L1: DECFSZ STACK_0, F GOTO SW_L2 DECFSZ STACK_1, F GOTO SW_L1 DECFSZ STACK_2, F GOTO SW_L1 GOTO SW_L3 ;สิ้นสุดการจับเวลา SW_L2: BTFSS SW ;ช่วงที่จับเวลามีการกดสวิทช์หรือไม่ GOTO SW_L1 INCF SW_DATA, F ;ถ้ากด ก็ให้เพิ่่มค่าตัวแปร CALL BEEP MOVLW 0X50 MOVWF STACK_4 DECFSZ STACK_3, F GOTO $-1 DECFSZ STACK_4, F GOTO $-3 BTFSS SW ;ยังกดค้างอยู่หรือไม่ GOTO SW_L1 GOTO $-8 ;ถ้ายังกดค้างอยู่ให้กลับไป delay จนกว่าจะไม่กดค้าง ในระหว่างการจับเวลา โปรแกรมจะกระโดดไปตรวจสอบสวิทช์อยู่ทุกรอบไซเคิล เพื่อดูว่ามีการกดสวิทช์หรือไม่ ถ้ากดสวิทช์ แต่ยังไม่ปล่อย ก็จะมีการหน่วงเวลาซ้ำเข้าไปอีก ซึ่งจะเริ่มจากแถว SW_L2: ไปจนจบโปรแกรมอ่านสวิทช์ หลังจากที่ครบเวลา 3 วินาทีแล้ว เราจะได้อะไรจากโปรแกรมอ่านสวิทช์ ครับ จะได้ค่าการกดสวิทช์ นั่นก็คือค่า sw_data นั่นเอง ซึ่งจะใช้ค่านี้ ไปสั่งงานในโปรแกรมส่วนต่อไป... รูปประกอบ http://upload.mwake.com/v3.php?id=Or/EfPuWPJw9e.jpg หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: kiano♥ ที่ ตุลาคม 23, 2009, 07:22:55 pm คิดไม่ออกครับ ว่าต่อไปจะอธิบายอย่างไร เพราะมันทำงานเกี่ยวเนื่องกัน
เอาเป็นว่ามาดูโฟว์ชาร์ทรวมของโปรแกรมกันดีกว่าครับ ถ้าไม่เข้าใจจุดไหนก็ถามแทรกมาได้เลยครับ ส่วนผมจะอธิบายไปเรื่อยๆ เท่าที่จะคิดได้ แต่ส่วนสำคัญก็คงจะเป็นส่วนของ โปรแกรมอ่านค่า จากรีโมทนั่นเองครับ จะมาดูกันว่า มันใช้ได้กับทุกรีโมทอย่างที่ผมเกริ่นไว้ได้จริงหรือไม่ รูปประกอบ http://upload.mwake.com/v3.php?id=zZ/o2zLV0fI9I.jpg หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: kiano♥ ที่ ตุลาคม 23, 2009, 07:37:54 pm จากรูปโฟว์ชาร์ทรวมการทำงานด้านบน จะเห็นได้ว่า ผมได้แยกสีไว้ครับ
อธิบายได้ดังนี้คือ... สีเขียว จะเป็นฟังก์ชั่นเมนของโปรแกรม ที่จะคอยตรวจสอบการสั่งงานจาก ยูสเซอร์ จะดูว่า มีการกดสวิทช์ หรือมีการกดรีโมทหรือไม่ ถ้าไม่ได้กดอะไร มันก็จะทำงานวนอยู่ในลูปของมัน สีฟ้า จะเป็นส่วนของโปรแกรมอ่านค่าจากการกดสวิทช์ จะนับว่า เรากดสวิทช์ไปกี่ครั้ง ในเวลา 3 วินาที กด 1 ครั้ง โปรแกรมจะกำหนดให้ ค่า IR เท่ากับค่าที่อ่านได้จากอีพรอม นั่นก็คือปุ่มที่ 2 แล้วมันจะไปสั่งงาน ให้โปรแกรมควบคุมหลอดไฟทำงาน โดยจะตรวจสอบสถานะของหลอดไฟหลอดที่ 1 ถ้าเปิดอยู่ มันก็จะสั่งให้ปิด ถ้าหลอดไฟปิดอยู่ มันก็จะสั่งให้เปิด ซึ่งโปรแกรมควบคุมหลอดไฟ ก็จะอยู่ในกลุ่มสีม่วงนั่นเองครับ แต่ถ้ากดสวิทช์ 6 ครั้งล่ะ มันก็จะสั่งงานในโหมดตั่งค่าปุ่มกดครับ โดยมันจะกระโดดไปรอรับคำสั่งจากตัวรีโมท รอให้เรากดปุ่มที่รีโมท แล้วก็จะจำค่าปุ่มนั่นเอาไว้ เพื่อนำมาใช้เป็นค่าอ้างอิงให้กับโปรแกรม ควบคุมหลอดไฟนั่นเอง สีแดง จะเป็นโปรแกรมอ่านโค๊ดจากรีโมท จะอ่านได้สูงสุดขนาด 16 bit ซึ่งจะได้อธิบายในหัวข้อต่อไปครับ หลังจากอ่านโค๊ดจากตัวรีโมทได้ 16 บิตแล้ว มันก็จะนำค่าที่อ่านได้ มาเปรียบเทียบกับค่าอ้างอิง ที่ได้จากการตั้งค่าตามคำอธิบายด้านบน ถ้าค่าตรงกัน มันก็จะสั่งให้หลอดไฟ เปิด หรือ ปิด หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: Ptn-LSVteam♥ ที่ ตุลาคม 23, 2009, 09:03:22 pm แนวคิดการออกแบบดีมากๆครับ smiley4
หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: kiano♥ ที่ ตุลาคม 23, 2009, 09:20:52 pm มาดูโปรแกรมอ่านค่ารีโมทกันครับ
เริ่มจากอ่าน เฮดพัลล์ ก่อนครับ ถ้าดูรูปด้านล่างประกอบ จะเห็นว่า เฮดพัลล์ ประกอบไปด้วย Low 8 ms ตามมาด้วย HI 4.5 ms ซึ่งรีโมทแต่ละตัว จะส่งออกมาเวลาจะใกล้เคียงกัน งั้นผมก็เลยกำหนดเอาเลยว่า ช่วงที่เป็น Low นั้น มันจะอยู่ในเวลาระหว่าง 255 us - 10000 us ถ้าไม่ได้อยู่ในช่วงเวลานี้ ก็แสดงว่า มันไม่ใช่เฮดพัลล์ ให้กระโดดไป Error ช่วงที่เป็น่ HI ก็จะเขียนโปรแกรมอ่านลักษณะเดียวกันครับ คือจับเวลาว่า มันจะต้องอยู่ในช่วงเวลา 255 - 10000 us ถ้าไม่ได้เวลาตามนี้ ก็ให้โดดไปที่ Error ดูโค๊ดกันเลยครับ ส่วนของการอ่านเฮดพัลล์ MOVLW 0X08 ;จับเวลา 10 ms MOVWF STACK_1 DECFSZ STACK_0, F GOTO $+4 DECFSZ STACK_1, F GOTO $-3 GOTO ERR ;ถ้านานเกิน 10 ms ให้โดดไป Error INCF COUNT_0, F BTFSC STATUS, Z INCF COUNT_1, F BTFSS IR GOTO $-9 ;จับเวลาน้อยกว่า 255 us หรือไม่ MOVLW 0X01 SUBWF COUNT_1, W BTFSS STATUS, C GOTO ERR ;ถ้าน้อยกว่า 255 us ให้โดดไป Error รูปประกอบ http://upload.mwake.com/v3.php?id=b0/UkKQW3Jcjo.jpg ขอขอบคุณ คุณพี่ Ptn-LSVteam♥ มากๆครับ ที่แวะมาให้กำลังใจครับ หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: kiano♥ ที่ ตุลาคม 23, 2009, 09:57:33 pm หลังจากอ่านเฮดพัลล์เสร็จแล้วโดยไม่มีการเออเร่อ คือถ้ามันเออเร่อ โปรแกรมมันจะเข้ามาในส่วนต่อไปนี้ไม่ได้
จึงไม่ต้องกังวลเลย ว่ามันจะแอบเปิดไฟของเราโดยที่เราไม่ได้สั่ง... และถึงแม้นอยส์ หรืออะไรก็แล้วแต่ ทำให้มันทำงานพลาด มันสามารถผ่านด่านเออเร่อสองครั้งของการอ่านเฮดพัลล์ แล้วเข้ามาส่วนนี้ได้ แต่มันก็ต้องเจอด่านอรหันต์ด่านต่อไปครับ คือ Lighting control นั่นเองครับ ก่อนอื่นเรามาวิเคราะห์กันอีกทีครับ ว่าสัญญาณโค๊ดที่ส่งมาจากรีโมทนั้น หน้าตาเป็นอย่างไร ดูจากรูปแนบแล้วจะเห็นว่า ถ้ามันส่ง Logic 0 ออกมา มันจะประกอบไปด้วย 2 สถานะ นั่นคือ เป็น LO 500us แล้วเป็น HI 500us แล้วถ้ามันส่ง Logic 1 ออกมา มันจะประกอบไปด้วย 2 สถานะเหมือนกัน แต่คาบเวลาจะต่างกัน นั่นคือ เป็น LO 500us แล้วเป็น HI 1800us ....... ข้อมูลอ้างอิงจากรีโมทเครืองวีซีดีจีนแดงทั่วไป เอาล่ะครับ เราจะเขียนโปรแกรมอย่างไร ให้มันแยกแยะออก ว่าอันไหนเป็น Logic 0 หรือ 1 แถมยังต้องให้ครอบคลุม ได้กับรีโมททุกยี่ห้ออีก เพราะแต่ละยี่ห้อ มันต้องส่งออกมาคาบเวลาไม่เหมือนกันแน่นอน แถมจำนวนบิตที่ส่งออกมา ก็อาจจะไม่ใช่ 32 บิตเหมือนกับรีโมทยี่ห้อนี้.... หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: kiano♥ ที่ ตุลาคม 24, 2009, 08:11:09 am เอางี้นะครับ เราปล่อยวางก่อน อย่าเพิ่งไปคิดอะไรมาก อย่าเพิ่งไปคิดว่ามันส่ง device code , data bottom อะไรของมันก็ให้มันส่งมา
ช่วงที่มันเป็น LO เราจะจับเวลาลองดู เพิ่มค่าเวลาในตัวแปรของเรา ดูซิ ว่าตัวแปรของเรามันจะได้ค่าเท่าไหร่กัน โดยโค๊ดจับเวลาช่วงที่มันเป็น LO 500us ตามด้านล่างเลยครับ IR_L1: CLRF STACK_1 IR_L2: MOVLW 1 ADDWF STACK_1, 1 ;เก็บเวลาช่่วง 0 ไว้ที่ตัวแปร STACK_1 NOP NOP NOP NOP NOP BTFSC STATUS, C ;stack-1 อยู่ระหว่าง 0~50 ถ้าวนเกิน 255 ให้ไปที่ case( 500us / 10us = 50 ) GOTO CASE BTFSS IR GOTO IR_L2 ;ถ้า ir ยังเป็น 0 ก็ให้กลับไปเพิ่มเวลา จากโค๊ดจะเห็นได้ว่า ในการนับวน 1 รอบหรือเพิ่มค่าตัวแปร 1 ครั้งนั้น ต้องใช้คำสั่งถึง 10 คำสั่ง ซึ่งแต่ละคำสั่งจะใช้เวลา 1 us แล้วช่วงเวลาที่มันเป็น LOW นั้นมันใช้เวลา 500 us ใช่ไหมครับ งั้นตัวแปรของเราจะมีค่า 500/10 = 50 แล้วเก็บค่าไว้ในตัวแปร stack_1 ซึ่ง stack_1 นั้นจะรับค่าได้สูงสุดคือ 255 มันจะมีรีโมทตัวไหนบ้างนะ ที่จะส่งดาต้า LOW ออกมาเกิน 255x10 = 2550 us โอเคครับ คงไม่มีแน่ๆ ผมคิดว่าอย่างนั้นนะครับ ดังนั้นค่าที่จับเวลาได้ ผมจึงใช้แค่ 8 บิต หรือใช้ตัวแปรแค่ตัวเดียวครับ หลังจากที่ลองจับเวลาช่วงเป็น LOW และได้ค่าตัวแปร STACK_1 มาแล้ว จะมาลองจับเวลาช่วงเป็น HI กัน โดยโค๊ดตามด้านล่างครับ CLRF STACK_2 IR_L3: MOVLW 1 ADDWF STACK_2, 1 ;เก็บค่าที่นับได้ ไว้ที่ตัวแปร STACK_2 NOP NOP NOP NOP NOP BTFSC STATUS, C ;stack-2 อยู่ระหว่าง 0~180 ถ้าวนเกิน 255 ครั้งให้ไปที่ case ( 1800us / 10us = 180 ) GOTO CASE BTFSC IR GOTO IR_L3 ;ถ้า ir ยังเป็น 1 ก็ให้กลับไปเพิ่มเวลา จะเห็นว่าเป็นโค๊ดตัวเดียวกันกับตัวจับเวลา LOW เพียงแต่จะเก็บค่าที่ได้ไว้ใน stack_2 มาดูกันครับ stack_2 จะมีค่าเท่าไหร่ 500/10 = 50 ตอนนี้เราจะได้ค่าตัวแปร 2 ตัวแล้วนะครับ คือค่าตัวแปร stack_1 = 50 และตัวแปร stack_2 =50 ซึ่งคาบเวลาเท่ากันก็หมายถึงเป็น Logic 0 นั่นเองครับ แล้วถ้าตัวแปรที่ได้เป็นอย่างนี้ครับ stack_1 = 50 และตัวแปร stack_2 = 180 (1800us / 10 = 180) ถ้าค่าตัวแปรออกมาแบบนี้ ก็หมายถึงรีโมทมันส่งค่า Logic 1 ออกมานั่นเอง ต่อไปจะดูโค๊ดตัวที่จะเป็นตัวตัดสินว่า บิตไหนจะเป็น 0 หรือบิตไหนจะเป็น 1 MOVF STACK_1, W ADDWF STACK_2, F MOVLW 0X9B SUBWF STACK_2, F BTFSC STATUS, C GOTO $+3 BCF IR_DATA, 0 GOTO IR_L1 BSF IR_DATA, 0 GOTO IR_L1 จากโปรแกรมด้านบนอธิบายได้แบบนี้ครับ... จะเห็นว่า จะนำค่า stack_1 กับ stack_2 มาบวกกัน แล้วลบด้วย 155 (Stack_1+stack_2)-155 แล้วจะตรวจสอบผลลัพธ์ที่ได้ ถ้าติดลบ ก็หมายถึง เป็น Logic 0 ถ้าค่าที่ได้ออกมาเป็นเลขบวก ก็หมายถึง Logic 1 ลองแทนค่าตัวแปรดูนะครับ (50+50)-155 = -55 ---> Logic 0 (50+180)-155 = 75 ---> Logic 1 หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: Nattawut-LSV Team ที่ ตุลาคม 24, 2009, 08:36:49 am เข้ามาดู มาเป็นกำลังใจให้ด้วยคนครับ ..... HAPPY2!! :) ping!
หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: ลุงเคี้ยง-LSVteam♥ ที่ ตุลาคม 24, 2009, 09:23:58 am ผมขอสนับสนุนอีกคนครับ HAPPY2!! :-[ THANK!! :-*
หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: alassy ที่ ตุลาคม 25, 2009, 11:26:29 pm เขียนเป็นแอสแซมบลี้เลยหรือครับท่าน มึนจัง อิอิ
หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: moo ที่ ตุลาคม 28, 2009, 06:19:54 am น่าสนใจมากครับขอถามนิดนึ่งเวลาโปรแกรม IC ใช้วงจรอะไรครับ :D
ผมใช้ pic Kit-2 OEM ครับ จะมีวิธีการโปรแกรมให้ดูด้วยครับ ในช่วงท้าย รวมทั้งการประกอบ การใช้งาน แต่ต้องรอหน่อยครับ และจะหาวิธีโปรแกรมที่ง่ายที่สุด สำหรับคนที่ยังไม่มีเครื่องโปรแกรมครับ จะได้ทำได้ทุกคนที่อยากทำ kiano หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: kiano♥ ที่ ตุลาคม 28, 2009, 08:12:56 pm หลังจากที่โปรแกรมคำนวนเวลาของพัลล์แต่ละลูกออกมาและได้รู้ว่าพัลล์ลูกไหนเป็น 0 หรือ 1 แล้วก็จะเก็บค่าเอาไว้ในตัวแปร 2 ตัวนั่นก็คือ IR_DATA และ IR_DATA_2 เราจะเขียนโปรแกรมได้ดังนี้ครับ
IR_L1: CLRF STACK_1 IR_L2: MOVLW 1 ADDWF STACK_1, 1 NOP NOP NOP NOP NOP BTFSC STATUS, C GOTO CASE BTFSS IR GOTO IR_L2 CLRF STACK_2 IR_L3: MOVLW 1 ADDWF STACK_2, 1 NOP NOP NOP NOP NOP BTFSC STATUS, C GOTO CASE BTFSC IR GOTO IR_L3 RLF IR_DATA_2, F BTFSS IR_DATA, 7 GOTO $+3 BSF IR_DATA_2, 0 GOTO $+2 BCF IR_DATA_2, 0 RLF IR_DATA, F MOVF STACK_1, W ADDWF STACK_2, F MOVLW 0X9B SUBWF STACK_2, F BTFSC STATUS, C GOTO $+3 BCF IR_DATA, 0 GOTO IR_L1 BSF IR_DATA, 0 GOTO IR_L1 จากโค๊ดส่วนของการอ่านค่าที่รีโมทส่งมา จะเห็นว่าโปรแกรมจะไม่แยกแยะ ว่ารีโมทส่งอะไรออกมา จะอ่านแค่เฮดพัลล์ และโค๊ด 16 บิทหลังสุดดังนั้น โค๊ดนี้จึงอ่านได้กับทุกรีโมทครับ เพราะหลังจากอ่านแล้ว มันก็จะเก็บค่าที่อ่านได้ ไว้ใน ee-prom เพื่อเป็นค่าอ้างอิง ในการควบคุมการปิด-เปิดหลอดไฟ ซึ่งจะดูได้จากส่วนของโปรแกรมคุมหลอดไฟต่อไปครับ ดูการเก็บค่าไว้ในตัวแปรได้จากรูปแนบครับ รูปประกอบ http://upload.mwake.com/v3.php?id=Hm/I198UMvDuI.jpg หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: msoamsoa ที่ พฤศจิกายน 02, 2009, 10:51:14 pm น่าสนใจมากเลยครับ hungry2 แต่ผมอ่านแล้วไม่ค่อยจะเข้าใจเท่าไรเลยอ่าครับ พื้นฐานไม่มี lsv-smile olleyes2
หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: ถาวร-LSVteam ที่ พฤศจิกายน 03, 2009, 09:19:06 am ผมแนะนำเรื่องตัวสวิท หน่อยครับ จะใช้ ฝาปิด ใหญ่ เป็นตัวกดสวิทใช่รึเปล่า ถ้าใช่ ผมแนะนำให้ ใส่สวิท ที่4มุม มุมละตัวครับ แทนที่จะใส่ตรงกลางเพียงตัวเดียว
-------------------------------------------------------------- ไม่ค่อยเข้าใจที่อาจารย์ถาวรแนะนำครับ คือหมายถึงใส่ตัวละมุม เพื่อรับแรงกดได้ทั่วแบบนี้หรือไม่ครับ หรือ ใส่ตัวละมุม แล้วให้แยกฟังก์ชั่นการทำงานของสวิทช์แต่ละตัวออก ตัวหนึ่ง ก็คุมไฟหลอดหนึ่ง แบบนี้หรือไม่ครับ พอดีมีคนแนะนำผมมาว่า น่าจะแยกสวิทช์ออก ไม่ให้มีสวิทช์เดียว เพราะตอนใช้งานจะไม่ค่อยสะดวก ถ้ายังไงคงจะปรับปรุงแล้วทำเป็นอีกเวอร์ชั่นน่ะครับ ขอบคุณครับ kiano หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: pop_9919 ที่ พฤศจิกายน 10, 2009, 03:32:33 pm กด 1 ครั้ง ให้สั่ง ปิด-เปิด หลอดไฟหลอดที่ 1
กด 2 ครั้ง ให้สั่ง ปิด-เปิด หลอดไฟหลอดที่ 2 กด 3 ครั้ง ให้สั่ง ปิด-เปิด หลอดไฟหลอดที่ 3 กด 6 ครั้ง ตั้งค่าปุ่มกดที่รีโมท ปุ่มที่ 1 ที่ควบคุมการทำงาน ให้ปิดหลอดไฟทุกหลอด หรือทุก CH นั่นเอง กด 7 ครั้ง ตั้งค่าปุ่มกดที่รีโมท ปุ่มที่ 2 ที่ควบคุมการทำงาน ปิด-เปิด หลอดไฟหลอดที่ 1 กด 8 ครั้ง ตั้งค่าปุ่มกดที่รีโมท ปุ่มที่ 3 ที่ควบคุมการทำงาน ปิด-เปิด หลอดไฟหลอดที่ 2 กด 9 ครั้ง ตั้งค่าปุ่มกดที่รีโมท ปุ่มที่ 4 ที่ควบคุมการทำงาน ปิด-เปิด หลอดไฟหลอดที่ 3........ คือผมสงสัยว่าเรากดรีโมท 1ครั้ง เปิด-ปิดหลอด1 กด2ครั้ง เปิดปิดหลอด2...คือว่ากด2ครั้งปุ่มเดี๋ยวกันหรือคนละปุ่ม แล้วถ้าเราจะตั้งให้มันเป็น 1หลอดต่อหนึ่งปุ่มบนรีโมทได้หรือป่าวคับ -------------------------------- ถ้าดูตามวงจร จะเห็นว่ามันมีสวิทช์อยู่ตัวเดียวครับ ซื่งการทำงานของสวิทช์ตามด้านบนวรรคแรก ส่วนการทำงานที่รีโมทนั้น จะมีปุ่มสั่งงานทั้งหมด 5 ปุ่มดังนี้ 1 เปิดทุกหลอด 2 ปิด-เปิด หลอดที่ 1 3 ปิด-เปิด หลอดที่ 2 4 ปิด-เปิด หลอดที่ 3 5 ปิดหมดทุกหลอด รีโมททั่วไปมันมีหลายปุ่มใช่ไหมครับ แต่ผมใช้แค่ 5 ปุ่มนี้มาใช้งาน ซึ่งการตั้งค่าที่ตัวรีโมท ว่าปุ่มไหนสั่งงานอะไร ก็ย้อนกลับไปอ่านด้านบนวรรคสอง kiano หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: ถาวร-LSVteam ที่ พฤศจิกายน 10, 2009, 07:11:06 pm เป็นสวิทขนานกันไงครับ ไม่ว่าจะกดด้านไหน ลืมไปคำสั่งแบบนี้จะมีปัญหาเรื่องการกดอีกเพราะว่ามันอาจจะนับเป็นครั้งไปเลย ถ้าสวิทเริ่มไม่ดี ผมว่าใช้สักพักจะมีปัญหาเรื่องสวิทตัวนี้แน่นอน
หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: kiano♥ ที่ พฤศจิกายน 15, 2009, 09:09:18 am หลังจากหายไปนาน จะว่ากันต่อในส่วนของโค๊ดตัวที่คุมการปิด เปิดหลอดไฟครับ
CONTROL: MOVF BOTTOM_0, W XORWF IR_DATA, W BTFSS STATUS, Z GOTO B1 MOVF BOTTOM_00, W XORWF IR_DATA_2, W BTFSS STATUS, Z GOTO B1 BCF CH1 BCF CH2 BCF CH3 CALL BEEP CALL DELAY GOTO MAIN สมมุติก่อนครับว่า ค่าของปุ่มกดที่รีโมท 5 ปุ่มนั้น เราได้ทำการตั้งค่าไว้ใน ee-prom แล้ว คราวนี้ ตัวโค๊ดด้านบนนี้ จะดึงค่าปุ่มกดปุ่มที่ 1 ออกมาก่อน เพื่อจะเปรียบเทียบค่าที่อ่านได้จากการกดรีโมท ถ้าตรงกัน ก็จะสั่งงานให้ปิดไฟหมดทุกหลอด แต่ถ้าไม่ตรง ก็จะกระโดดไปเปรียบเทียบกับค่าป่มต่อไป ตามโค๊ดด้านล่างครับ B1: MOVF BOTTOM_1, W XORWF IR_DATA, W BTFSS STATUS, Z GOTO B2 MOVF BOTTOM_11, W XORWF IR_DATA_2, W BTFSS STATUS, Z GOTO B2 MOVF GPIO, W MOVWF STACK_0 MOVLW 0X01 XORWF STACK_0, F BTFSS STACK_0, 0 GOTO $+3 BSF CH1 GOTO $+2 BCF CH1 CALL BEEP CALL DELAY GOTO MAIN จากโค๊ดจะเห็นว่า จะดึงค่าปุ่มกดปุ่มที่ 2 ออกมาเปรียบเทียบกับค่าที่อ่านได้จากการกดรีโมท ถ้าค่าเท่ากัน ก็จะตรวจสอบว่า หลอดไฟหลอดที่ 1 เปิด หรือ ปิด อยู่ ถ้าเปิดอยู่ ก็จะสั่งให้ปิด หรือกลับกัน ถ้าปิดอยู่ ก็จะสั่งให้เปิด แต่ถ้าเปรียบเทียบแล้ว ค่าไม่เท่ากัน ก็จะกระโดดไปเปรียบเทียบกับปุ่มต่อไป ซึ่งโปรแกรมจะเขียนเหมือนกันครับ หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: moo ที่ พฤศจิกายน 18, 2009, 06:48:22 pm อยากได้ไอซีที่เบิร์นแล้วครับไม่ทราบว่าถ้าขายตัวละเท่าไรครับ
น่าลองทำเล่นดู หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: DuKKunG ที่ พฤศจิกายน 20, 2009, 08:08:47 pm ผมขอเอาไปทำส่งอาจารย์ได้มั้ยครับ!
หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: TRIGUN ที่ พฤศจิกายน 24, 2009, 12:03:26 pm ช่วยรบกวนเขียนโค๊ดของไอซี PIC12F629
ทั้งหมดที่จะไลลงให้ผมหน่ยได่ไหมคับ ผมใช้รีโมทจีนเเดงเหมือนพี่อ่ะคับผม -------------------------------------------------- อยู่ที่ข้อความที่ # 35 ครับผม kiano หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: kiano♥ ที่ พฤศจิกายน 29, 2009, 08:19:18 am หลังจากประกอบเสร็จและต่อเข้าหลอดไฟเสร็จแล้วมาดูวิธีการเซ็ตตั้งค่าเพื่อใช้งานกันครับ
จ่ายไฟเข้าจะเสียงเตือน บี๊ป 1 ครั้งคือพร้อมที่จะรับคำสั่ง ขั้นตอนการตั้งค่ามีดังนี้ 1.กดที่สวิทช์ 6 ครั้ง จะมีเสียง ปี๊บ... ปี๊บ... แล้วกดปุ่ม power ที่รีโมท แล้วรอเสียง ปี๊บ...ปี๊บ... เสร็จการตั้งค่าปุ่ม A 2.กดที่สวิทช์ 7 ครั้ง จะมีเสียง ปี๊บ... ปี๊บ แล้วกดปุ่มเลข 1 ที่รีโมท แล้วจะมีเสียง ปี๊บ... เสร็จการตั้งค่าปุ่ม B 3.กดที่สวิทช์ 8 ครั้ง จะมีเสียง ปี๊บ... ปี๊บ ปี๊บ แล้วกดปุ่มเลข 2 ที่รีโมท แล้วจะมีเสียง ปี๊บ... เสร็จการตั้งค่าปุ่ม C 4.กดที่สวิทช์ 9 ครั้ง จะมีเสียง ปี๊บ... ปี๊บ ปี๊บ ปี๊บ แล้วกดปุ่มเลข 3 ที่รีโมท แล้วจะมีเสียง ปี๊บ... เสร็จการตั้งค่าปุ่ม D 5.กดที่สวิทช์ 10 ครั้ง จะมีเสียง ปี๊บ... ปี๊บ... แล้วกดปุ่ม Eject ที่รีโมท แล้วจะมีเสียง ปี๊บ...ปี๊บ... เสร็จการตั้งค่าปุ่ม E หลังจากการตั้งค่าทุกปุ่มเรียบร้อยแล้ว ก็พร้อมที่จะใช้งานได้เลย รายละเอียดการใช้งานมีดังนี้ กดรีโมทปุ่ม A จะควบคุมการ ปิด ไฟหมดทุกหลอด กดรีโมทปุ่ม B จะควบคุมการ ปิด-เปิด ไฟหลอดที่ 1 กดรีโมทปุ่ม C จะควบคุมการ ปิด-เปิด ไฟหลอดที่ 2 กดรีโมทปุ่ม D จะควบคุมการ ปิด-เปิด ไฟหลอดที่ 3 กดรีโมทปุ่ม E จะควบคุมการ เปิด ไฟหมดทุกหลอด หรือถ้าไม่อยากกดรีโมท ก็กดที่สวิทช์ มีการใช้งานดังนี้ กดสวิทช์ 1 ครั้ง จะควบคุมการ ปิด-เปิด ไฟหลอดที่ 1 กดสวิทช์ 2 ครั้ง จะควบคุมการ ปิด-เปิด ไฟหลอดที่ 2 กดสวิทช์ 3 ครั้ง จะควบคุมการ ปิด-เปิด ไฟหลอดที่ 3 *ในการตั้งค่าของรีโมทนั้น จะต้องจ่อตัวรีโมทเข้าใกล้ๆกับตัวรับที่แผงสวิทช์มากที่สุด *ปุ่มต่างๆที่รีโมท ตามขั้นตอนการตั้งค่าจากข้อ 1-5 เลือกเอาได้ตามใจชอบ ว่าจะให้ปุ่มไหน แต่อย่าให้ซ้ำกัน *ถ้าตั้งค่ารีโมทแล้ว ปุ่มไหนไม่ทำงาน ก็ตั้งใหม่ได้ในข้อนั้นๆ เช่น ข้อที่ 3 ก็กดสวิทช์ 8 ครั้ง *ถ้าตั้งค่าแล้ว อยากตั้งใหม่ อยากเปลี่ยนปุ่มไหน ก็ทำตามข้อของปุ่มนั้นได้เลย เช่น ข้อ 5 แหล่งข้อมูลอ้างอิง โค๊ดตัวอย่าง http://www.thaimcu.com/article/irda1.htm http://www.sixca.com/eng/articles/remote/index.html หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: SAK101 ที่ ธันวาคม 02, 2009, 07:25:28 pm แจ๋วครับถ้าเวิร์คแล้ววางขายบอกด้วยนะครับจะเอามาเปิด-ปิดไฟพาร์หน้าเวทีหน่อย อิอิอิ (แซวเล่น)
หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: got_extra ที่ ธันวาคม 20, 2009, 02:11:11 pm ถ้าจะดัดแปลงใช้ ic ธรรมดาได้เปล่าครับ....
หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: service1993 ที่ ธันวาคม 21, 2009, 11:03:55 pm เป็นกำลังใจให้ครับ ที่สร้างชิ้นงานดีๆมาแบ่งปันครับ แต่ก็อย่าลืมใส่ระบบป้องกันการลัดวงจรด้วยนะครับเพื่อวันดีคืนเกิดไหม้ขึ้นมาเอาให้ปลอดภัยไว้ก่อนจะเป็นการดีครับ love!!!
หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: chan555 ที่ พฤษภาคม 04, 2010, 09:55:16 pm ตัวไดโอดที่ต่อจาก ch1' 2 '3 ' ไม่มีเบอร์หรือครับ และpz ตัวอไรคับ
tongue3 tongue3 tongue3 หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: kiano♥ ที่ พฤษภาคม 04, 2010, 10:08:39 pm ไม่ใช่ไดโอดครับ เป็นไตรแอคเบอร์ 16A600V บอกเบอร์ไปแล้วที่กระทู้แรกเลย
PZ คือลำโพงเปียซโซครับ หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: aunt991 ที่ กรกฎาคม 12, 2010, 12:32:39 pm พี่ครับ
ผมขออนุญาตเอาไปทำโปรเจคได้ไหมครับ :D หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: aunt991 ที่ กรกฎาคม 12, 2010, 05:57:18 pm พี่ครับ ผมขออนุญาตเอาไปทำโปรเจคได้ไหมครับ :D แต่ผมยังไม่เข้าใจเรื่องการเขียนโปรแกรมลงไอซีอะครับ ช่วยอธิบายให้ผมฟังทีครับ :D หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: aunt991 ที่ สิงหาคม 04, 2010, 01:48:09 pm อย่าเงียบซิครับ
ผมยังรอดูอยู่นะครับ thank2 หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: got_extra ที่ สิงหาคม 10, 2010, 08:00:47 pm รอดูด้วยคนครับ........อยากทำมั่ง... smiley4
หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: aunt991 ที่ สิงหาคม 23, 2010, 06:19:44 pm เงียบฉี่เลยครับ
อิอิ หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: got_extra ที่ กันยายน 25, 2010, 08:43:11 pm ถึงคุณkiano♥
ช่วยเขียนเป็นภาษาซีให้ดูหน่อยจะได้เปล่าครับผมอยากทำมั่งจะได้ต่อยอดได้อีก....เพราะผมศึกษาภาษาซีอยู่พอมาเจอภาษา asm งงเลย.... :( หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: domeplay ที่ ตุลาคม 17, 2010, 12:47:07 am เออคือ
อาจารย์ให้ผมทำโปรเจคส่ง ผมเลยอยากจะขออนุญาติเอาโครงการนี้ ไปทำได้ไหมครับ ถ้าได้ ผมอยากจะขอรายละเอียด มากกว่านี้หน่อย คือผมเรียนช่างไฟฟ้า ผมไม่รู้อะไรเลยเกี่ยวกับวงจรอิเลคโทรนิค อยากทราบ วัสดุอุปกรณ์ที่ต้องใช้ รวมไปถึง หลักการทำงานคร่าวๆ พอที่จะไปเสนออาจารย์ก่อนอ่าครับ รบกวนหน่อยนะครับ ผมไม่รู้เรื่องเลยจริงๆ ช่วยสอบผมตั่งแต่ 0 หน่อยเถอะครับ หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: kiano♥ ที่ ธันวาคม 03, 2010, 04:32:38 pm การใช้งาน และการตั้งค่ารีโมท
http://www.youtube.com/v/oOJ5gc5pzME?fs=1&hl=en_US http://www.youtube.com/watch?v=oOJ5gc5pzME หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: aunt991 ที่ มกราคม 08, 2011, 10:49:03 am ถ้าจะดัดแปลงมาใช้ควบคุมรีเลต้องทำยังไงครับ
หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: ratipong ที่ กุมภาพันธ์ 18, 2011, 06:09:19 am พี่ผมสนใน โครงงานพี่มากเลยครับ เสนอซื้อหน่อยครับจะมาติดที่ห้องครับ สนใจมากๆๆๆ Ratipong_12@hotmail.com
หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: ratipong ที่ กุมภาพันธ์ 18, 2011, 06:11:17 am แก้ไขครับ Ratipong_13@hotmail.com
หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: aunt991 ที่ เมษายน 28, 2011, 09:54:27 pm ขอถามนะครับ
ใช้ไอซีคอมโทลยเลอร์เบอร์ 16f627a ได้เปล่าครับ ------------------------------------------ ใช้ MCU ที่มี EEPROM ได้ทุกเบอร์ครับ แต่ต้องแก้โค๊ดให้ใช้กับเบอร์นั้นๆ kiano หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: aunt991 ที่ มิถุนายน 02, 2011, 07:42:33 pm ขอถามนะครับ ใช้ไอซีคอมโทลยเลอร์เบอร์ 16f627a ได้เปล่าครับ ------------------------------------------ ใช้ MCU ที่มี EEPROM ได้ทุกเบอร์ครับ แต่ต้องแก้โค๊ดให้ใช้กับเบอร์นั้นๆ kiano ตอนนี้สามารถติดต่อคุณได้ทางไหนที่สะดวกมั้งครับ เล่นเอ็มไหมครับ ------------------------------ เอ็ม kiano555@windowslive.com Tel. 084-4188023(AIS) 083-6401595(DTAC) หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: aunt991 ที่ มิถุนายน 03, 2011, 05:25:29 pm เดียวคุยกันทางเอ็มนะครับ
คือผมพูดไม่ค่อยเก่นนะครับ ขอบคุณครับ หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: THe_PALm ที่ ตุลาคม 14, 2011, 12:59:03 pm อยากทำดูนะ พี่อยู่ภูเก็ตป่าวอ่ะคับ ที่ร้านพี่มีของป่าว แบบว่าพวกบอร์ดทั้งหลายที่ใช้เขียนโปรแกรมอ่ะ ผมไม่รู้จะเริ่มยังไง embarrassed7
หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: Essolup ที่ มิถุนายน 17, 2012, 07:23:14 pm ผมอยากทำโครงงานนี้ครับ แต่อยากใช่ pic 16f877 ครับ ต้องเขียนโปรแกรมยังไงครับ
หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: amnat2520 ที่ สิงหาคม 22, 2012, 03:39:06 pm พี่ครับผมรบกวนขอ โค้ดที่ใช้ได้เลยของ สวิตซ์ควบคุมด้วยรีโมทครับ ของ PIC12F629
-ขอในรูปแบบ Textfile เพื่อขอศึกษาเรื่องโค้ดเพราะผมไม่มีความรู้เรื่องนี้ครับ -ขอในรูปแบบ HEX ที่พร้อมเบิร์นได้เรยครับ ของคุณคุณล่วงหน้าครับ ที่เมล์ผมได้ไหมครับ amnat_puy@hotmail.com หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: Sgt.Supadit ที่ กันยายน 13, 2012, 05:54:15 pm พี่เก่งมากครับ
ผมสนใจมาก ผมขอโค๊ดการสั่งงานทั้งหมดเลยได้ไหมครับ จะลองทำใช้ดูบ้างครับ ขอบคุณครับ ping! หัวข้อ: Re: มาทำสวิทช์ ปิด-เปิดไฟด้วยรีโมทกันเถอะ เริ่มหัวข้อโดย: supanimit ที่ พฤศจิกายน 06, 2012, 10:04:21 pm shocked2พี่คับในแผ่นปริ้นที่เขียนว่าok1-ok2-ok3มีทั้งหมด3ตัวมันคือตัวอะไรหราคับ
|