Solarwato.com ช่างโหน่งพลังงานแสงอาทิตย์

สาระความรู้กับช่างโหน่ง

ติดตั้งโซล่าเซลระบบต่างๆ

จำนวนผู้เข้าชม

สมาชิก : 302
Content : 124
เว็บลิงก์ : 6
จำนวนครั้งเปิดดูบทความ : 1477048

จำนวนบุคคลออนไลน์

เรามี 16 บุคคลทั่วไป ออนไลน์
Arduino หน้า2 PDF พิมพ์ อีเมล
เขียนโดย Administrator   
วันศุกร์ที่ 23 ธันวาคม 2016 เวลา 00:25 น.

การโปรแกรมไอซีatmega328

เปิดโปรแกรมArduino1.0.1 โหลดข้อมูลเข้าในโปรแกรมกดโหลดโปรแกรมเข้าในไอซี

................................................................

..............................................................

ในรูปข้างต้นเปิดโปรแกรมตัวอย่างที่มีในArduino1.0.1เป็นโปรแกรมไฟกระพริบ โปรแกรมนี้เป็นโปรแกรมที่ทดสอบง่ายที่สุด ขา13ของไอซีต่อLEDผ่านรีซิตเตอร์1Kลงไฟลบ(GND)

ในบทความที่กล่าวมาเป็นเทคนิคต่างๆที่ช่างโหน่งได้ทดลองทำดูแล้วสำเร็จจึงนำมาเผยแพร่สำหรับมือใใหม่ที่เริ่มเล่นไอซีตระกูลนี้ครับ ต่อไปเป็นเทคนิคการนำไอซีมาต่อการทำงานโดยตรง(StandAlone)ทั้งขาแบบตะขาบ(DIP)และขาแบบชิพ32ขา(TQFP)มีความยากและง่ายต่างกันครับ.

การนำไอซีไปใช้งาน(Standalone)

โครงสร้างภายในของไอซีแบบต่างๆมีการออกแบบต่างกันครับเพราะฉะนั้นการออกแบบแผ่นวงจรและการนำตัวไอซีที่เราโปรแกรมแล้วไปใช้งานหรือที่ฝรั่งเรียกว่า standalone ลงในแผ่นวงจรต้องมีเทคนิคที่แตกต่างกันครับ ก่อนอื่นเราต้องรู้จักขาของไอซีแต่ละแบบแล้วนำมาออกแบบครับ.

.........................................................

........................................................

ในรูปเป็นขาแบบตะขาบ(DIP)และขาแบบชิพ(TQFO) จำนวนและตำแหน่งขาต่างกันครับ การต่อพื้นฐานตามรูปข้างต้นยกเว้นขาAref ไม่ต้องต่อแต่อาจจะใช้Cค่า0.1ไมโครต่อลงไฟลบไว้เพื่อลดการรบกวนจากภายนอกครับ.

การออกแบบวงจร

โครงสร้างภายในที่แตกต่างกัน เมื่อเราออกแบบแผ่นวงจรจะพบปัญหามากมาย ทดลองในตัวเขียนโปรแกรมก็ผ่านแต่พอเอามาลงปริ้นไม่ผ่าน ปัญหาเหล่านี้สำหรับไอซีตระกูลนี้คือคลื่นรบกวนและสนามแม่เหล็กเหนี่ยวนำ การออกแบบต้องมีไฟลบหรือGnd ต้องมีพื้นที่ล้อมรอบขาทั้งหมด และขาที่ไม่ได้ใช้งานออกแบบปริ้นห่างจากชิพประมาณ2เซ็นแล้วลงกราวด์จะช่วยลดการรบกวนได้ครับ โดยเฉพาะการออกแบบสำหรับชิพแบบTQFPครับ.

.............................................................

...........................................................

ตัวอย่างการออกแบบสำหรับชิพTQFP 32ขา จะมีบางขาที่ต่อร่วมกันจะสังเกตุว่ากราวด์(Gnd)จะมีพื้นที่มากแต่การนำไปลงแผ่นปริ้นยังต้องระวังคลื่นแม่เหล็กเหนี่ยวนำโดยเฉพาะการต่อไฟไปเลี้ยงวงจรด้วยครับ.

เนื้องจากชิพ32ขาจะราคาถูกกว่าเพราะการนำไปใช้งานยากกว่าสำหรับมือใหม่และไอซีตระกูลนี้โครงสร้างภายในไม่มีการป้องกันการรบกวน จึงทำให้คนไม่นิยมใช้ราคาจึงถูก แต่หากเราหาวิธีและทดสอบแล้วปัญหาต่างๆจะถูกแก้ ทำให้ต้นทุนการผลิตถูกลงและการลอกเลียนแบบทำได้ยากขึ้นครับ.

ส่วนการออกแบบไอซีแบบขาตะขาบไม่ค่อยมีปัญหาอะไรแต่ราคาค่อนข้างสูงครับ แต่เลือกไม่ได้ครับเพราะเราไม่สามารถทำแผ่นปริ้นที่มีขนาดเล็กได้ครับ.

การอ่านข้อมูลที่เขียนบนไอซีและการป้องกันCopy

ในบทความข้างต้นเราไม่สามารถเข้าถึงหน่วยความจำในไอซีได้โดยเห็นข้อมูลภายในทั้งหมด ซึ่งบางครั้งโค้ดที่เขาให้มาอาจมีการป้องกันการก๊อปใส่ค่าที่ผิดๆมาให้ หากเราใช้โปรแกรมที่สามารถเขียนข้อมูลที่เป็นภาษาเครื่อง(HexFiles)และอ่านภาษาเครื่อง(HexFiles)ออกมาเก็บไว้ได้ เราก็สามารถบันทึงลงไอซีตัวใหม่ได้ บทความนี้เขียนขึ้นเพื่อสำรองข้อมูลไอซีเก็บไว้หากไอซีตัวที่ทำงานเกิดความเสียหายขึ้นจะได้ใช้ไอซีตัวใหม่เปลี่ยนได้อย่างรวดเร็วครับ ไม่ได้แนะนำให้ก๊อปเพื่อประโยชน์ทางการค้าครับ แต่หากไอซีใส่รหัสไว้ก็เสียใจด้วยครับ.

........................................................

.........................................................

โปรแกรมที่ช่างโหน่งใช้คือKhazama หาโหลดตามเน็ตได้ครับ เมื่อได้โปรแกรมมาแล้วเราจะเชื่อมต่อกับไอซีได้อย่างไร ในท้องตลาดมีอุปกรณ์ตัวนี้ขายอยู่มากมายครับเขาเรียกกันว่าUSBASP ราคาไม่เกินร้อยบาทครับ.

..............................................................

.............................................................

ตัวเชื่อมต่อตัวนี้ต่อเข้าทางUSBของคอมพิวเตอร์เลยครับ สายที่ต่อออกทั้งหมดมี6เส้นครับ

..........................................................

..........................................................

ไอซีแบบตะขาบ(DIP)

Miso---pin18 ต่อเข้าขา18

Mosi---pin17 ต่อเข้าขา17

Sck---pin19 ต่อเข้าขา19

Res---pin1  ต่อเข้าขา1

Vtg--pin7,20 ต่อเข้าขา7และ20

Gnd--pin8,22 ต่อเข้าขา8และ22

ไอซีแบบชิพ(TQFP)32ขา

Miso---pin16 ต่อเข้าขา16

Mosi---pin15 ต่อเข้าขา15

Sck---pin19 ต่อเข้าขา19

Res---pin29  ต่อเข้าขา29

Vtg--pin4,6,18 ต่อเข้าขา4และ6และ18

Gnd--pin3,5,21 ต่อเข้าขา3และ5และ21

การโปรแกรมและการใช้งาน

เมื่อเปิดโปรแกรมขึ้นมาขั้นตอนแรกเราต้องเลือกเบอร์ไอซีที่เราใช้งานอยู่ในที่นี้ช่างโหน่งใชAtmega328

.....................................................

.....................................................

ต่อไปโหลดโปรแกรมที่จะเขียนลงไปในไอซีครับ โดยไฟล์ที่ใช้นี้ต้องเป็นไฟล์ภาษาเครื่องหรือHexfiles

.....................................................

....................................................

เราจะเอาHexFiles(เฮ็กไฟล์)นี้มาจากใหนครับ ในโปรแกรมของArduino ก็เป็นนามสกุลINOจะแปลงเป็นนามสกุลHexได้อย่างไรครับ ในโปรแกรมอาดุยโน่ที่เขียนลงไปในเครื่องต้องเป็นภาษาเครื่องเท่านั้นครับ(HexFiles)ซึ่งโปรแกรมเขาไม่ได้แสดงออกมาให้เราเห็นเขาทำสำเร็จสะดวกสำหรับการใช้งานครับแต่หากเราต้องการHexFilesมีวิธีดังนี้ครับ ช่างโหน่งใช้ระบบวินโด้XPอยู่นะครับหากใครใช้ระบบอื่นอยู่ก็หาที่เก็บHexFilesตามนี้ครับ.

........................................................

.........................................................

เข้าไปที่Start---Run แล้วพิมพ์%temp% เราก็จะเข้าไปถึงสถานที่เก็บHexFilesเมื่ออาดุยโน่แปล(compiles)ก่อนที่จะเขียนลงไอซีครับ แต่เมื่ออาดุยโน่เขียนเสร็จแล้วไฟล์ที่เก็บไว้ในtempก็จะถูกลบไปโดยอัตโนมัตเราจะไม่ให้ลบได้อย่างไรงานนี้ต้องไปกำหนดค่าที่โปรแกรมอาดุยโน่ครับ.

...........................................................

...........................................................

เปิดโปรแกรมอาดุยโน่ขึ้นมาเข้าไปที่Preferences กดเครื่องหมายถูกตามรูปแล้วกดOKด้านล่างครับ เมื่อเรากดแปล(compiles)เราจะปรากฏเห็นHexFilesอยู่ในสถานที่ที่กล่าวมาในข้างต้นครับ.

..........................................................

........................................................

เราได้HexFilesแล้วก็ก๊อปไปเก็บไว้ที่แฟ้มอื่นเพื่อสะดวกต่อการหาไปเขียนครับในที่นี้ช่างโหน่งก๊อปไปที่ฮาร์ดดิส ไดร์Cครับ.

....................................................

.....................................................

เมื่อโหลดได้แล้วก็กดAuto Programeครับ.

...............................................

...............................................

โปรแกรมก็จะเขียนจนเสร็จครับ หากขึ้นเออเร่อ(Error)มาก็ตรวจเช็คการต่อสายและอุปกรณ์ครับ.

การโหลดข้อมูลในไอซีมาเก็บไว้

หากในตัวไอซีนั้นไม่มีการล๊อครหัสไว้เราก็สามารถโหลดเอาข้อมูลมาเก็บไว้แต่ข้อมูลนี้เป็นภาษาเครื่องนะครับ(HexFiles)เราสามารถสำรองข้อมูลในไอซีตัวนั้นเก็บไว้เพื่อเขียนในตัวใหม่หากตัวเดิมเสียหายไปครับ.

.....................................................

......................................................

การใส่รหัสเพื่อป้องกันการก๊อบ(Copy)

การป้องกันการCopyมีไว้ในโปรแกรมสำหรับไมโครคอนโทลเลอร์ทุกตัวครับ ก็คงเป็นความคิดของใครของมันหากไปจดลิขสิทธิไว้ก็จะมีค่าใช้จ่ายมากถึงอย่างไรมันก็แอบละเมิดอีกอยู่ดีครับ ทางที่ดีใส่รหัสไว้ก็ยังดีกว่าไม่ใส่ครับ ไม่ใช้ไม่มีทางถอดรหัสได้แต่ก็ยากหน่อยหรือไอซีอาจเสียหายไปเลยก็มีครับ.

..........................................................

..........................................................

ใส่รหัสเข้าไปแล้วกดSave ถ่ายรูปจำไว้ด้วยนะครับเดี๋ยวจะลืม เมื่อเสร็จแล้วเราไม่สามารถโหลดข้อมมูลออกมาได้ครับ

 

 

 

แก้ไขล่าสุด ใน วันเสาร์ที่ 24 ธันวาคม 2016 เวลา 12:43 น.
 

โซล่าเซลมีหน้าที่ผลิตไฟฟ้า อุปกรณ์ต่างๆที่ใช้ไฟฟ้าหากไม่มีโซล่าเซลก็ทำงานด้วยไฟฟ้าจากแหล่งอื่นได้ การนำโซล่าเซลไปใช้กับเครื่องใช้ไฟฟ้าเพื่อเพิ่มมูลค่าสินค้าขึ้นหลายเท่า ตัว เป็นการแอบอ้างที่น่าละอายและหมดทางหากินในชีวิต ผลสุดท้ายของการแอบอ้างจากพลังงานที่มีคุณค่ามหาศาลนั้นจะทำให้ชีวิตของคน ที่แอบอ้างเหล่านั้นต้องมืดมนในบั้นปลายของชีวิตครับ ช่างโหน่งขอไว้อาลัยกับกลุ่มคนที่อาศัยคำว่าโซล่าเซลเพื่อหลอกลวงทำให้ สินค้านั้นแพงขึ้น ทั้งๆที่ไม่มีโซล่าเซลก็ไม่ต่างกับสินค้าทั่วๆไป.

Joomla 1.5 layout

ระบบแปลงไฟขนาดต่างๆ