วันเสาร์ที่ 31 ตุลาคม พ.ศ. 2558

Serial Peripheral Interface (SPI)

อธิบาย การทำงานชองโปร แกรม

โปรแกรม จะมีให้เลือก 2 mode คือ

1.แสดงเลข 00-99 ทาง 7-segment โดยส่งทาง Bluetooth จาก Smartphone

โดยเมื่อรันโปรแกรม จะขึ้นให้เลือก
1 MOD 7-SEGMENT
2. Read analog
X. Exit Mode
 กด 1 เข้าสู่โหมด 1 สามารถส่งเลขได้ตั้งแต่ 00-99 เมื่อต้องการออกจาก mode 1 ให้ กด x แล้วส่งค่าไป
ก็จะออกจาก mode 1 กลับสู้ menu

2.แสดงค่า analog ของ VR ให้แสดงบน smartphone


กด 2 เข้าสู่การอ่านค่า analog ของ VR โดยส่งกลับมาที่ smartphone ตั้งแต่ 0-3.3 v เมื่อจะออก mode 2  ก็ กด x ก็ จะกลับ สู่ menu หลัก คับ


วันพุธที่ 21 ตุลาคม พ.ศ. 2558

LAP3-Serial-CommunicationI

LAP 3

ให้ Nucleo สื่อสารกับ Computer โดยใช้ Comport โดยให้  Nucleo ส่ง เมนู

สําหรับสั่งงานขึ้นที่หน้าจอ Serial Monitor

การทำงานหลักๆจะเป็น 2 เมนู ดังนี้ 
เมนูที่ 1 เมื่อเจ้าสู่การทำงานโหมดที่ 1 จะสั่งไฟ LED  วิ่ง 8 ดวง
  • เมื่อเข้าสู่โหมด ระบบจะรอรับคำสั่งจากแป้นพิมพ์ 3 ตัว คือ a,s และ d
  • เมื่อกด a >> ไฟ LED 8 ดวงจะทำงานในรูปแบบหนึ่ง (ทำค้างไว้ตลอด)
  • เมื่อกด d >>ไฟ LED 8 ดวงจะทำงานในอีกรูปแบบหนึ่ง (ทำค้างไว้ตลอด)
  • เมื่อกด s >>ไฟ LED 8 ดวงจะหยุดการทำงาน และออกจากโหมดเข้าสู่เมนูหลักรอครับคำสั่งอีกครั้ง
เมนูที่ 2 เมื่อกดเข้าสู่การทำงาน โหมดที่ 2 อ่านสถานะสวิตซ์ logic input 1 bits
  • ในโหมดนี้ ระบบจะทำการอ่านค่าสถานะของสวิตซ์ D0 บนบอร์ด NX-100 และแสดงสถานะบน serial monitor 
  • หากสวิตซ์อยู่บนตำแหน่ง OFF จะแสดงเลข 0
  • หากสวิตซ์อยู่บนตำแหน่ง ON จะแสดงเลข 1

วันพุธที่ 14 ตุลาคม พ.ศ. 2558

LAP 2.2 _NUCLEO_F411RE GROUP 1A

LAP 2.2
หลักการทำงาน
  • อ่านค่า input analog จาก VR ตั้งแต่ 0.0-3.3V 
  • แสดงระดับแรงดันเป็นตัวเลขออกที่ 7-segment โดยมีความละเอียดเป็นเลขทศนิยม 1 ตำแหน่ง

LAP 2.1 _NUCLEO_F411RE GROUP 1A

LAP 2.1

หลักการทำงาน
  • อ่านค่า input analog จาก VR ตั้งแต่ 0.0-3.3V 
  • แสดงระดับแรงดันด้วย LED 8 ดวง ในลักษณะเหมือน VU Meter

LAP 1 _NUCLEO_F411RE GROUP 1A

LAB1

หลักการทำงาน
รับ 3 input สวิทช์ แสดงเป็น LED แปดดวงในลักษณะที่ต่างกัน 3 รูปแบบ
  • รูปแบบที่ 1 วิ่งไป-กลับสลับกัน
  • รูปแบบที่ 2 วิ่งจากขอบทั้งสองด้านเข้าหากัน
  • รูปแบบที่ 3 วิ่งจากด้านขวามือไปยังซ้ายมือในทิศทางเดียว





วันอังคารที่ 13 ตุลาคม พ.ศ. 2558

Finite State Machine

Finite State Machine

แบ่งออกเป็น 2 ประเภท
  1. Moore คือการที่จะเปลี่ยน  state โดยไม่สนใจ outputขึ้นอยู่กับ เลขของ input
  2. Mealy คือการที่จะเปลี่ยน State ได้นั้นต้องดู output ด้วย

วีธีการทำ

1.เปลี่ยนจาก state ที่เป็น ตัวอักษรให้เป็น เลขฐานสอง













วงกลม: State
ส่วนบนภายในวงกลม: ระบุชื่อที่อธิบาย State นั้นๆ
ส่วนล่างภายในวงกลม: ระบุ Output ของ State นั้นๆ
ลูกศร: การ transition จาก State หนึ่งสู่อีก state หนึ่ง
ซึ่งการ transition จะเกิดขึ้นทุกๆ clock
ตัวเลขบนลูกศร: Logic ของ input ที่ทำให้เกิด transition นั้น

2.   สร้าง  State table










   3. Assigning Filp-Flops to the table

        D Type Filp-Flops










D Filp-Flops นั้น สามารถดู จาก Next State   A   และ B ได้ เลย

JK Type Filp-Flops














การที่จะใช้ JK FF นั้นต้องดู  Current State เทียบ กับ Next State  Ja ,Ka กูดูจาก  A กับ Anext ส่วนของ Jb Jb ก็เหมือนกัน

4.1.       Determine the Boolean functions for the inputs and outputs
 D FF  

  Input

















 Output















5.1.       Draw the circuit


















JK FF
Input














Output















Draw the circuit (JK FF)




















Class Work






   Current State
  Input
      Next State
        Output

   D-Filp flops
      A
      B
     A
    B
      Y1
     Y2
    Da
  DB
0
0
0
0
1
0
0
0
1
0
0
1
1
1
0
0
1
1
0
1
0
1
0
0
1
1
0
0
1
1
0
0
0
1
0
0
1
0
0
1
1
1
0
1
1
1
0
1
0
1
1
0
0
1
1
1
0
0
0
1
1
0
0
1
1
1
1
0
1
1
1
0

Da
             A
                                                                       BI
           0 0
           0 1
              11
               10
             0
             0
              1
                0
                1
             1
             1
              0
                1
                0
D a = ( AB’I’)+(A’B’I)+(ABI)+(A’BI’)

Db
             A
                                                                      BI
           0 0
           0 1
              11
               10
             0
             1
              1
                0
                0
             1
             1
              1
                0
                0
Db =  B’

Output
Y1
             A
             
                                                       B
                       0
                            1
             0
                       0
                            0
             1
                       1
                            1
Y1 = A

Y2
             A
             
                                                       B
                       0
                            1
             0
                       0
                            1
             1
                       0
                            1
Y2=B

Draw the circuit