ยินดีต้อนรับคุณ, บุคคลทั่วไป กรุณา เข้าสู่ระบบ หรือ ลงทะเบียน

เข้าสู่ระบบด้วยชื่อผู้ใช้ รหัสผ่าน และระยะเวลาในเซสชั่น

หน้า: [1]   ลงล่าง
พิมพ์
ผู้เขียน หัวข้อ: ภาษา C สำหรับ MCS-51  (อ่าน 12527 ครั้ง)
0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้
melonsplitz
สมุนแก๊งเสียว
*

พลังน้ำใจ: 30
ออฟไลน์ ออฟไลน์

กระทู้: 560



ดูรายละเอียด
« เมื่อ: 24 มกราคม 2007, 18:31:55 »

คือตอนนี้ผมกำลังทำ pre-project อยู่อะครับ

อาจารย์ให้ทำรถเดินตามเส้น แบบว่ามีทางขาดด้วยอะ

ไคพอจะมีเว็บสอนเขียนโปรแกรม หรือตัวอย่าง code โปรแกรมภาษา C สำหรับ MCS-51 มั่งครับ  จะส่งต้นเดือนหน้าแล้วคร้าาาบ >,<
บันทึกการเข้า
melonsplitz
สมุนแก๊งเสียว
*

พลังน้ำใจ: 30
ออฟไลน์ ออฟไลน์

กระทู้: 560



ดูรายละเอียด
« ตอบ #1 เมื่อ: 24 มกราคม 2007, 19:58:47 »

ขอขุดครับ ><
บันทึกการเข้า
เรารักนายนะน้องฟี่
ยามเฝ้าบอร์ด
Global Moderator
เจ้าพ่อบอร์ดเสียว
*****

พลังน้ำใจ: 182
ออฟไลน์ ออฟไลน์

กระทู้: 5,010



ดูรายละเอียด
« ตอบ #2 เมื่อ: 24 มกราคม 2007, 20:23:56 »

โค๊ด:
http://www.sunncity.com/Games/Maze3D/Maze3D.zip


เป็นเกมเขา วงกต อ่ะครับ คล้ายๆกัน แต่เป็นภาษา java น่ะครับ

ดูโค๊ต ก็น่าจะ มีไอเดียขึ้นมาหน่อย เพราะ คำสั่งมันก็คล้ายๆกัน

เห็นก็น่าจะพอเดาได้ว่าอะไรคืออะไร ว่าแต่ java 1+2 ผมยังได้ D อยู่เลย แฮ่ๆ ๆ :lol:  :lol:  :lol:  :lol:
บันทึกการเข้า
melonsplitz
สมุนแก๊งเสียว
*

พลังน้ำใจ: 30
ออฟไลน์ ออฟไลน์

กระทู้: 560



ดูรายละเอียด
« ตอบ #3 เมื่อ: 24 มกราคม 2007, 20:40:37 »

:roll: เปิดดูแล้วงงๆมึนๆ >,<

แต่ก็ขอบคุณมากครับ จะลองแกะๆเกาๆดู

ว่าแต่ผมยังไม่เคยเรียน Java เลยอะ แฮะๆๆ  :lol:  :lol:
บันทึกการเข้า
เรารักนายนะน้องฟี่
ยามเฝ้าบอร์ด
Global Moderator
เจ้าพ่อบอร์ดเสียว
*****

พลังน้ำใจ: 182
ออฟไลน์ ออฟไลน์

กระทู้: 5,010



ดูรายละเอียด
« ตอบ #4 เมื่อ: 24 มกราคม 2007, 21:00:10 »

ผมเคยเรียนแต่ จาวา ครับ ไม่เคยเรียน C   :lol:  :lol:  :lol:  :lol:  :lol:
บันทึกการเข้า
EThaiZone
เจ้าพ่อโลลิค่อน
เจ้าพ่อบอร์ดเสียว
*

พลังน้ำใจ: 321
ออฟไลน์ ออฟไลน์

กระทู้: 12,518



ดูรายละเอียด เว็บไซต์
« ตอบ #5 เมื่อ: 24 มกราคม 2007, 21:56:08 »

จาวาก็กำลังศึกษา แต่ไม่เคยลองเขียน
ส่วน C ผมได้นิดเดียวเอง
แค่เขียนในรันบนดอส เหอๆ

ความจริงไม่ได้อยากเรียน แต่มีบังคับสอน
และหนังสือเรียนที่จารย์ใช้สอน C มันซังกะบ๊วยสุดๆ

ว่าแต่MCS-51 มันคืออะไรครับ Huh?
บันทึกการเข้า

melonsplitz
สมุนแก๊งเสียว
*

พลังน้ำใจ: 30
ออฟไลน์ ออฟไลน์

กระทู้: 560



ดูรายละเอียด
« ตอบ #6 เมื่อ: 24 มกราคม 2007, 22:33:30 »

MCS-51 มันคือ ไมโครคอนโทรลเลอร์ ครับ
เอาไว้โปรแกรมควบคุมมอเตอร์ตัวรถครับ
บันทึกการเข้า
EThaiZone
เจ้าพ่อโลลิค่อน
เจ้าพ่อบอร์ดเสียว
*

พลังน้ำใจ: 321
ออฟไลน์ ออฟไลน์

กระทู้: 12,518



ดูรายละเอียด เว็บไซต์
« ตอบ #7 เมื่อ: 24 มกราคม 2007, 23:14:53 »

อ้อ ผมก็นึกว่าเป็นพวกคอมรุ่นเก่าๆ
แบบพวกเครื่องเกมส์อย่าง Atari ซะอีก

ผมเคยรู้แต่พวกเขียนคุมผ่าน IC (จำผิดๆ)

แต่รู้แค่ทฤษฎี ไม่เคยลองทำ
บันทึกการเข้า

idelsonar
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 59
ออฟไลน์ ออฟไลน์

กระทู้: 1,018



ดูรายละเอียด
« ตอบ #8 เมื่อ: 24 มกราคม 2007, 23:17:03 »

MCS-51 เคยเขียนเมื่อ 2 ปีก่อน ไม่ได้ใช้แล้วมันลืม
อีก 2 เทอมมีเรียน
บันทึกการเข้า

goldrich
คนรักเสียว
*

พลังน้ำใจ: 14
ออฟไลน์ ออฟไลน์

กระทู้: 162



ดูรายละเอียด
« ตอบ #9 เมื่อ: 25 มกราคม 2007, 00:50:20 »

ใช้เซนเซอร์กี่ตัวอ่ะครับ

ที่ผมเคยทำ คือใช้เซนเซอร์ 3 ตัว

โดย 2 ตัวอยู่นอก(ซ้ายขวา) วิเคราะห์สีขาว (โต๊ะขาว) อีกตัวอยู่ในวิเคราะห์สีดำ (วิ่งตามแถบสีดำ)

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

จากนั้นก็มาทำ event ต่าง ๆ โดยพิจารณาจากเซนเซอร์ทั้ง 3 ตัวครับ โดย
1. กรณี 2ขาว เจอขาว 1ดำเจอดำ ก็ไปโมดูล เดินหน้า
2. กรณี 1ขาว(ซ้าย)เจอขาว 1ขาว(ขวา)เจอดำ 1ดำเจอดำ ก็ เลี้ยวขวา
3. กรณี  1ขาว(ซ้าย)เจอดำ 1ขาว(ขวา)เจอขาว 1ดำเจอดำ ก็เลี้ยวขวา
4. กรณี เจอขาวหมด ก็ให้หมุนกลับ
(พอเข้าใจมั้ยครับ)


ส่วนเขียนยังไง .... ลงหม้อไปหมดแล้วครับ แหะ ๆ
บันทึกการเข้า

18+
XSONIC Harddisk dock สำหรับคนมีฮาร์ดดิสหลายลูก

ถ้าความเห็นของผมมีประโยชน์ ขอ +1 Thank ครับ
totiz
ก๊วนเสียว
*

พลังน้ำใจ: 2
ออฟไลน์ ออฟไลน์

กระทู้: 206



ดูรายละเอียด
« ตอบ #10 เมื่อ: 25 มกราคม 2007, 01:49:06 »

ใช่ tools ชื่อ keil หรือป่าวคับ
ลองดูตัวอย่างนะ

โค๊ด:
#include <REG51F.H>

void delay(unsigned int value)
{
   unsigned int count;
   for (count = 1; count < value; count++);
}

void main()
{
        while(1)
        {
             P1=0x55;
             delay(200);
             P1=0xAA;
             delay(200);
        }

}


อันนี้คือให้ port1 ออก 1 สลับกับ 0
แต่ถ้าจะทำรถเดิมตามเส้น   ต้องมีเซนเซอร์  อย่างน้อยก็ 2 ตัว  ข้างหน้า
ซ้ายกับขวา      ถ้าใช่ MCS51  ก็ใช่ port1  อย่างเดี่ยวก็พอ
เอามา 2 บิตรับเซนเซอร์   อีก 2 บิตควบคุมล้อทั้ง 2 ข้าง
เวลารับ input เข้ามาต้อง out 1 ออกไปก่อน(ถ้าเรียนโครงสร้างของ MCS51 มาแล้วจะรู้นะ)  อันนี้้ถ้ายังไม่รู้คงงงๆ  เดี่ยวเขียนให้ดูละกัน

เอาง่ายๆนะ  ไปต่อยอดเอา

โค๊ด:
bit x;                       // ถ้าไม่ได้ก็ int x;
P1 = 0x03;             // 0000 0011  เอา 1 ไปที่ P1.0 กับ P1.1
                               // ทำแค่ครั้งแรกครั้งเดี่ยว สำหรับบิตที่จะ input
while(1)
{
     x = P1^0          // หรือ P1.0 สักอย่างจำไม่ได้ละ  ลองหาดู
     if(x == 1)
     {
           P1^2 = 1;
     }
     else
     {
           P1^2 = 0;
      }
}


อันนี้ไม่มีอะไรมากแค่ input ค่าเข้ามา  แล้วก็ output ออกไป
ต้องเอาไปประยุกค์อีกนะ
บันทึกการเข้า
melonsplitz
สมุนแก๊งเสียว
*

พลังน้ำใจ: 30
ออฟไลน์ ออฟไลน์

กระทู้: 560



ดูรายละเอียด
« ตอบ #11 เมื่อ: 07 กุมภาพันธ์ 2007, 12:43:35 »

นึกว่ากระทู้หายไปไหนโดนย้านมาอีกหัวข้อนี่เอง แฮะๆๆ ><

ตั้งกระทู้วันที่ 24 พอกลับมาดูอีกทีหาไม่เจอ search ก็ไม่เจอ

พอดีวันนี้ลอง search google ดันมาเจอกระทู้นี้ติดอันดับ 2
http://www.google.co.th/search...8%A2+Google&meta=&aq=o

ขอบคุณทุกๆท่านมากครับ แล้วผมจะลองเอาเขียนดู แฮะๆๆ

ปล.บอร์ดต้องทำหใหม่หมดเลยอะ ที่ทำมาใช้ไม่ได้ เหอะๆๆ
โปรแกรมก็เขียนยังไม่เส็ด จะส่งวันที่ 12 แระ ดีนะที่เลื่อนวันส่ง
จะทันไม๊เนี่ยๆๆๆ ><
บันทึกการเข้า
หน้า: [1]   ขึ้นบน
พิมพ์