ผลต่างระหว่างรุ่นของ "01204223 การปฏิบัติการทางวิศวกรรมคอมพิวเตอร์ ปีการศึกษา 2555"

จาก Theory Wiki
ไปยังการนำทาง ไปยังการค้นหา
(minor updates)
(01204223 การปฏิบัติการทางวิศวกรรมคอมพิวเตอร์ ถูกเปลี่ยนชื่อเป็น [[01204223 การปฏิบัติการทางวิศวกร...)
 
(ไม่แสดง 4 รุ่นระหว่างกลางโดยผู้ใช้ 2 คน)
แถว 40: แถว 40:
  
 
=== สัปดาห์ที่ 4 ===
 
=== สัปดาห์ที่ 4 ===
* ฮาร์ดแวร์: การประกอบวงจรต้นแบบบนบอร์ดไข่ ... \n
+
* ฮาร์ดแวร์: การประกอบวงจรต้นแบบบนบอร์ดไข่ปลา และการเขียนโปรแกรมจัดการอินพุทและเอาท์พุท
 +
** สไลด์: แผงวงจรพ่วง ([http://www.cpe.ku.ac.th/~cpj/204223/slides/h5-peri.ppt เอกสาร ppt]) ([http://www.cpe.ku.ac.th/~cpj/204223/slides/h5-peri.pdf เอกสาร pdf])
 +
** วิกิ: [[แผงวงจรพ่วง (Peripheral Board)]]
 +
* ซอฟต์แวร์: พัฒนาโปรแกรมด้วย TDD บน Python
 +
** ดูคลิปด้านล่าง
 +
** ทำแลบ Python Kang Fu ใน [https://cloud3.cpe.ku.ac.th/elab2/ Elab2]
 +
** ในแลบนี้เราจะประมวลผลข้อมูลในลิสต์มากมาย ด้านล่างเป็นรายการเอกสารเพิ่มเติมเกี่ยวกับการใช้งานลิสต์:
 +
*** [http://docs.python.org/tutorial/introduction.html#lists การใช้งานลิสต์ที่ละเอียดขึ้นจาก Python Tutorial]  ในเอกสารนี้ให้สังเกตความหมายของการอ้างถึงข้อมูลในลิสต์  โดยใช้ดัชนีที่เป็นบวก (นับจากหน้า) และดัชนีที่เป็นลบ (นับลำดับจากท้าย) เช่นการอ้าง <tt>a[3]</tt> หรือ <tt>a[-1]</tt> และการอ้างส่วนของลิสต์ เช่น <tt>a[1:10]</tt>, <tt>a[2:]</tt> หรือ <tt>a[1:-1]</tt> เป็นต้น
 +
*** เอกสารอ้างอิง [http://docs.python.org/library/stdtypes.html#sequence-types-str-unicode-list-tuple-bytearray-buffer-xrange Sequence Types] และ [http://docs.python.org/library/stdtypes.html#typesseq-mutable Mutable Sequence Types] (ลิสต์เป็นรายการที่เปลี่ยนได้ จึงเรียกว่าเป็น mutable sequence types)
 +
** เอกสาร [http://docs.python.org/library/doctest.html doctest] 
 +
** ด้านล่างเป็นโค้ดที่ต้องเพิ่มไปตอนท้ายโปรแกรม เพื่อให้ python รัน doctest ในโมดูลของเรา
  
== Servant Leadership: Helping People Come Alive ==
+
if __name__ == "__main__":
 +
    import doctest
 +
    doctest.testmod()
  
"Its a powerful perspective on work -- holding within it a value for collaboration, agency, creativity, and meaning. What if we all could see what we do in that way? What if our organizations supported us in holding that perspective, and to go one step further, how can we create institutions that release these core values? In his seminal 1970 essay
+
=== สัปดาห์ที่ 5 ===
 +
* ฮาร์ดแวร์: การควบคุมเอาท์พุท และการตรวจสอบอินพุทแบบดิจิทัลและแอนะล็อก
 +
** สไลด์: ภาษาซีเบื้องต้นสำหรับไมโครคอนโทรลเลอร์ ([http://www.cpe.ku.ac.th/~cpj/204223/slides/h6-c.ppt เอกสาร ppt]) ([http://www.cpe.ku.ac.th/~cpj/204223/slides/h6-c.pdf เอกสาร pdf])
 +
** สไลด์: แผงวงจรพ่วง ([http://www.cpe.ku.ac.th/~cpj/204223/slides/h5-peri.ppt เอกสาร ppt]) ([http://www.cpe.ku.ac.th/~cpj/204223/slides/h5-peri.pdf เอกสาร pdf])
 +
** วิกิ: [[แผงวงจรพ่วง (Peripheral Board)]]
 +
** วิกิ: [[การวัดสัญญาณแอนะล็อกด้วยไมโครคอนโทรลเลอร์]]
 +
=== สัปดาห์ที่ 6 ===
 +
* ซอฟต์แวร์: การจัดการกับความซับซ้อนของซอฟต์แวร์ใน Python --- โมดูล (modules) และคลาส (classes)
 +
** คลิป OOP บน Python: [http://www.youtube.com/watch?v=o9wAnP20ovQ ตอนที่ 1], [http://www.youtube.com/watch?v=vm0K_l7O-eQ ตอนที่ 2], [http://www.youtube.com/watch?v=3Jd2b5NydTQ ตอนที่ 3], [http://www.youtube.com/watch?v=bc-l0oMY16U ตอนที่ 4]
 +
** เอกสารประกอบ: [http://theory.cpe.ku.ac.th/~jittat/dm/?q=node/30 โมดูลใน Python],[http://www.cpe.ku.ac.th/~cpj/204223/slides/s4-oop.pdf การโปรแกรมเชิงวัตถุแบบเต่า ๆ], [http://theory.cpe.ku.ac.th/~jittat/dm/?q=node/31 การโปรแกรมเชิงวัตถุใน Python],
  
[[http://goodvillenews.com/Servant-Leadership-Helping-People-Come-Alive-zqkEDB.html Servant Leadership: Helping People Come Alive]]
+
ตัวอย่างการเรียกใช้ <tt>__init__</tt> จากคลาสที่เรา inherite มา
  
[[http://goodvillenews.com/wk.html GoodvilleNews.com - good, positive news, inspirational stories, articles]]
+
class Robot(GamePiece):
 +
    def __init__(self,r,c,target):
 +
        GamePiece.__init__(self,r,c)
 +
        # ..... your other initialization code here
  
== What Is Your Legacy? Living A Meaningful life ==
+
=== สัปดาห์ที่ 7 ===
 +
* ฮาร์ดแวร์: การจำลองบอร์ด MCU เป็นอุปกรณ์ USB
 +
** สไลด์: การเชื่อมต่อกับบอร์ด MCU ผ่านพอร์ต USB ([http://www.cpe.ku.ac.th/~cpj/204223/slides/h7-usb.ppt เอกสาร ppt]) ([http://www.cpe.ku.ac.th/~cpj/204223/slides/h7-usb.pdf เอกสาร pdf])
 +
** วิกิ: [[การจำลองบอร์ด MCU เป็นอุปกรณ์ USB]]
  
I want the world to be better because I was here. I want my life, I want my work, my family, I want it to mean something and if you are not making someone elses life better then you are wasting your time Will Smith
+
=== สัปดาห์ที่ 12 ===
 +
* เครื่องมือจัดการเวอร์ชัน
 +
** สไลด์: การจัดการเวอร์ชันด้วย Mercurial ([http://www.cpe.ku.ac.th/~cpj/204223/slides/s6-mercurial.ppt เอกสาร ppt]) ([http://www.cpe.ku.ac.th/~cpj/204223/slides/s6-mercurial.pdf เอกสาร pdf])
 +
** ลิ้งค์: [http://tortoisehg.bitbucket.org/ TortoiseHG]
  
[[http://goodvillenews.com/What-Is-Your-Legacy-Living-A-Meaningful-life-oBtnrB.html What Is Your Legacy? Living A Meaningful life]]
+
การติดตั้ง TortoiseHG บนลินุกซ์ Mint/Ubuntu/Debian ใช้คำสั่ง
 +
sudo apt-get install tortoisehg
  
[[http://goodvillenews.com/wk.html GoodvilleNews.com - good, positive news, inspirational stories, articles]]
+
== รายการวิดีโอ ==
  
== Three Qualifications for the New Politician ==
+
=== ฮาร์ดแวร์ ===
 +
* แนะนำการใช้งานชุดทดลองดิจิทัลและออสซิลโลสโคป
 +
** [http://www.youtube.com/watch?v=l9TbzzR5aoU ตอนที่ 1] การใช้งานชุดทดลองดิจิทัลเบื้องต้น
 +
** [http://www.youtube.com/watch?v=hG7ARRjuFYY ตอนที่ 2] การเตรียมการใช้งานออสซิลโลสโคป
 +
** [http://www.youtube.com/watch?v=3kwYQbZDE_8 ตอนที่ 3] กลไกทริกเกอร์ของออสซิลโลสโคป
 +
** [http://www.youtube.com/watch?v=I0rjp3ZsDjQ ตอนที่ 4] การใช้งานระบบเคอร์เซอร์
  
There are plenty of politicians who genuinely desire to serve their communities and nations with humility and integrity, dedicating their lives to the cultivation of a wisdom that will benefit society at large; sadly, they are a minority.
+
=== Unix ===
 +
* แนะนำ path ใน unix
 +
** [http://www.youtube.com/watch?v=UI5LdVp9XtY ตอนที่ 1] เกริ่นนำเกี่ยวกับ shell และแนะนำแนวคิดของโครงสร้างไดเร็กทอรี
 +
** [http://www.youtube.com/watch?v=qv4cetEvIgo ตอนที่ 2] อธิบายแนวคิดของ working directory และการอ้างถึงไฟล์โดยอิงกับ working directory, ทดลองใช้คำสั่ง ls, cd, pwd และ cp
 +
** [http://www.youtube.com/watch?v=WeacW6PTKB4 ตอนที่ 3] อธิบายวิธีการอ้างถึงไฟล์ในรูปแบบอื่น ๆ เช่นการอ้างแบบ absolute (/) อ้างผ่าน home (~) และการอ้างถึงตำแหน่งนั้นเอง (.) กับการอ้างถึงไดเร็กทอรีก่อนหน้า (..)
  
[[http://goodvillenews.com/Three-Qualifications-for-the-New-Politician-227DZ2.html Three Qualifications for the New Politician]]
+
* แนะนำ unix ตอน 2: glob และการกระจายคำสั่ง
 +
** [http://www.youtube.com/watch?v=3em6kZH4GNw ตอนที่ 1] ยกตัวอย่างการใช้ pattern เพื่อแทนชื่อไฟล์ และอธิบายการทำงานของ command expansion/substitution
 +
** [http://www.youtube.com/watch?v=S2k6ndK6yWE ตอนที่ 2] แนะนำการใช้ *, ?, และ [..] ในการทำ filename expansion ใน shell
  
[[http://goodvillenews.com/wk.html GoodvilleNews.com - good, positive news, inspirational stories, articles]]
+
* แนะนำ unix ตอน 3: การใช้ redirection และ pipe
 +
** [http://www.youtube.com/watch?v=q0GOaGwFXdQ คลิปที่ youtube] (มีตอนเดียว) แนะนำการใช้งาน rediretion และ pipe พร้อมยกตัวอย่างด้วยคำสั่ง grep และ wc  และแนะนำคำสั่ง tee
  
== World Book Night: Millions of Free Books Donated ==
+
=== Python ===
 +
* การเขียน Python เบื้องต้น
 +
** ยังไม่มี
 +
* การพัฒนาแบบใช้การทดสอบผลักดัน (Test-driven development)
 +
** TDD บน Python [http://www.youtube.com/watch?v=wmTyuKsp4yk ตอนที่ 1], [http://www.youtube.com/watch?v=4E4AUyUD8w8 ตอนที่ 2], [http://www.youtube.com/watch?v=4E4AUyUD8w8 ตอนที่ 3]
 +
** คลิปโดย Masterspark: [http://www.youtube.com/watch?v=g4GJrYWmptw ตัวอย่างการเขียนฟังก์ชัน 1], [http://www.youtube.com/watch?v=yzaim3lpJaQ ตัวอย่างการเขียนฟังก์ชัน 2], [http://www.youtube.com/user/masterspark คลิปอื่น ๆ ของ Masterspark]
  
A young woman is jumping up and down in front of the New York Public Library wearing a sandwich sign that says, "Hate Reading? Talk To Me!" Shes waving around several copies of "The Glass Castle" by Jeannette Walls, eager to get them off her hands.Men and women in suits breeze by, but some passersby are curious about the spectacle. If you were roaming the streets of New York City or London last night you may have encountered a similar scene: Zealous readers handing out award-winning novels by the boxful.
+
=== เอดิเตอร์ Vi และ ViM ===
 +
* [http://www.youtube.com/watch?v=zQSsFRngrf4 แนะนำเอดิเตอร์ VIM ]
 +
* [http://www.youtube.com/watch?v=FLWeA0zBtok Vi เบื้องต้น: การเคลื่อนเคอร์เซอร์]
  
[[http://goodvillenews.com/World-Book-Night-Millions-of-Free-Books-Donated-J7S8iH.html World Book Night: Millions of Free Books Donated]]
+
== ลิงก์ที่สำคัญ ==
 
+
* [https://www.facebook.com/groups/329116400500728/ Group CPE,KU Practicum 2555] ใน facebook
[[http://goodvillenews.com/wk.html GoodvilleNews.com - good, positive news, inspirational stories, articles]]
+
* [https://cloud3.cpe.ku.ac.th/elab2/ E-Lab2] สำหรับส่งแล็บ
 
+
* [http://cloud3.cpe.ku.ac.th/practicum/ รวมโครงงานจากปีก่อน ๆ]
== Food People Power ==
+
* [http://www.cpe.ku.ac.th/~cpj/204223/ หน้าเว็บหลักของภาคการศึกษาก่อน]
 
+
* [http://www.skot9000.com/ttl/ คู่มือดูขาไอซีลอจิกเกท]
For many years, people living in West Oakland had accepted eating unhealthy food as a way of life. That is, until a small group of people decided to change their community through Mandela MarketPlace, a non-profit that partners with local residents and rural, minority farmers to bring fresh agricultural produce to their local corner stores. Mandela MarketPlace now represents the difference that youth can make by challenging prevailing paradigms - you CAN select what you put in your body.
+
* [http://www.cpe.ku.ac.th/~cpj/204223/practicum-board.zip ไฟล์วงจรและแผ่นวงจรพิมพ์ของบอร์ด Practicum] เปิดด้วยโปรแกรม [http://www.cadsoftusa.com CadSoft EAGLE]
 
 
[[http://goodvillenews.com/Food-People-Power-NPElli.html Food People Power]]
 
 
 
[[http://goodvillenews.com/wk.html GoodvilleNews.com - good, positive news, inspirational stories, articles]]
 

รุ่นแก้ไขปัจจุบันเมื่อ 10:21, 9 มิถุนายน 2556

หน้านี้รวบรวมลิงก์ของเอกสารและวิดีโอประกอบการเรียนวิชาการปฏิบัติการทางวิศวกรรมคอมพิวเตอร์

ประกาศ

แผนการสอน

เนื้อหา

สัปดาห์ที่ 1

สัปดาห์ที่ 2

สัปดาห์ที่ 3

สัปดาห์ที่ 4

  • ฮาร์ดแวร์: การประกอบวงจรต้นแบบบนบอร์ดไข่ปลา และการเขียนโปรแกรมจัดการอินพุทและเอาท์พุท
  • ซอฟต์แวร์: พัฒนาโปรแกรมด้วย TDD บน Python
    • ดูคลิปด้านล่าง
    • ทำแลบ Python Kang Fu ใน Elab2
    • ในแลบนี้เราจะประมวลผลข้อมูลในลิสต์มากมาย ด้านล่างเป็นรายการเอกสารเพิ่มเติมเกี่ยวกับการใช้งานลิสต์:
      • การใช้งานลิสต์ที่ละเอียดขึ้นจาก Python Tutorial ในเอกสารนี้ให้สังเกตความหมายของการอ้างถึงข้อมูลในลิสต์ โดยใช้ดัชนีที่เป็นบวก (นับจากหน้า) และดัชนีที่เป็นลบ (นับลำดับจากท้าย) เช่นการอ้าง a[3] หรือ a[-1] และการอ้างส่วนของลิสต์ เช่น a[1:10], a[2:] หรือ a[1:-1] เป็นต้น
      • เอกสารอ้างอิง Sequence Types และ Mutable Sequence Types (ลิสต์เป็นรายการที่เปลี่ยนได้ จึงเรียกว่าเป็น mutable sequence types)
    • เอกสาร doctest
    • ด้านล่างเป็นโค้ดที่ต้องเพิ่มไปตอนท้ายโปรแกรม เพื่อให้ python รัน doctest ในโมดูลของเรา
if __name__ == "__main__":
    import doctest
    doctest.testmod()

สัปดาห์ที่ 5

สัปดาห์ที่ 6

ตัวอย่างการเรียกใช้ __init__ จากคลาสที่เรา inherite มา

class Robot(GamePiece):
    def __init__(self,r,c,target):
        GamePiece.__init__(self,r,c)
        # ..... your other initialization code here

สัปดาห์ที่ 7

สัปดาห์ที่ 12

การติดตั้ง TortoiseHG บนลินุกซ์ Mint/Ubuntu/Debian ใช้คำสั่ง

sudo apt-get install tortoisehg

รายการวิดีโอ

ฮาร์ดแวร์

  • แนะนำการใช้งานชุดทดลองดิจิทัลและออสซิลโลสโคป
    • ตอนที่ 1 การใช้งานชุดทดลองดิจิทัลเบื้องต้น
    • ตอนที่ 2 การเตรียมการใช้งานออสซิลโลสโคป
    • ตอนที่ 3 กลไกทริกเกอร์ของออสซิลโลสโคป
    • ตอนที่ 4 การใช้งานระบบเคอร์เซอร์

Unix

  • แนะนำ path ใน unix
    • ตอนที่ 1 เกริ่นนำเกี่ยวกับ shell และแนะนำแนวคิดของโครงสร้างไดเร็กทอรี
    • ตอนที่ 2 อธิบายแนวคิดของ working directory และการอ้างถึงไฟล์โดยอิงกับ working directory, ทดลองใช้คำสั่ง ls, cd, pwd และ cp
    • ตอนที่ 3 อธิบายวิธีการอ้างถึงไฟล์ในรูปแบบอื่น ๆ เช่นการอ้างแบบ absolute (/) อ้างผ่าน home (~) และการอ้างถึงตำแหน่งนั้นเอง (.) กับการอ้างถึงไดเร็กทอรีก่อนหน้า (..)
  • แนะนำ unix ตอน 2: glob และการกระจายคำสั่ง
    • ตอนที่ 1 ยกตัวอย่างการใช้ pattern เพื่อแทนชื่อไฟล์ และอธิบายการทำงานของ command expansion/substitution
    • ตอนที่ 2 แนะนำการใช้ *, ?, และ [..] ในการทำ filename expansion ใน shell
  • แนะนำ unix ตอน 3: การใช้ redirection และ pipe
    • คลิปที่ youtube (มีตอนเดียว) แนะนำการใช้งาน rediretion และ pipe พร้อมยกตัวอย่างด้วยคำสั่ง grep และ wc และแนะนำคำสั่ง tee

Python

เอดิเตอร์ Vi และ ViM

ลิงก์ที่สำคัญ