พิมพ์หน้านี้ - ใครเก่ง picbasic pro ช่วยตอบหน่อยครับ

► อิเล็กทรอนิกส์ ► => หุ่นยนต์-pcb-เทคโนโลยี่ใหม่ => ข้อความที่เริ่มโดย: jam_007 ที่ มิถุนายน 09, 2009, 06:02:03 pm



หัวข้อ: ใครเก่ง picbasic pro ช่วยตอบหน่อยครับ
เริ่มหัวข้อโดย: jam_007 ที่ มิถุนายน 09, 2009, 06:02:03 pm
ช่วยอธิบายว่ามันทำงานยังไงครับ  olleyes2  ถ้าไม่รบกวนจนเกินไปก็ขอทั้งหมดครับ


หัวข้อ: Re: ใครเก่ง picbasic pro ช่วยตอบหน่อยครับ
เริ่มหัวข้อโดย: laser ที่ กรกฎาคม 16, 2009, 03:52:57 pm
มันเปน เงื่อนไขที่ตั้งไว้ว่า ถ้า portB มากกว่า 4 และไม่เท่ากับ 11110000 จำทำงานอ่ะคัฟ

มันจาใช้งานได้หรอ ในเมื่อ lable    getkey: ไม่มีการรับค่าใด ๆ นอกจากสั่ง พักการทำงาน 50 ms -*-


หัวข้อ: Re: ใครเก่ง picbasic pro ช่วยตอบหน่อยครับ
เริ่มหัวข้อโดย: laser ที่ กรกฎาคม 16, 2009, 04:04:45 pm
col var byte คือการกำหนด ให้ตัวแปร col มีค่า 0-255
row เหมือนกับด้านบน
key เหมือนกับ ด้านบน
baud var porta.0 คือกำหนดให้ porta.0 เป็นชื่อตัวแปร baud
serpin เหมือนกับด้านบนแต่เป็น port a.1

loop:
   gosub getkey  ให้ไปทำงานที่ lable getkey

send:
   if baud = 1 then fast ถ้า baud ถูกกระทำโดยการจ่ายไปเข้า ขาA.0
จะทำตามเงื่อนไข ซึ่ง = fast
serout serpin,n2400,[key]
กำหนด serpin = n2400 อยู่ใน ตัวแปร key กรณีที่ baud เป็น 0 หรือ เป็น กราวน์
goto loop กลับไปทำงานที่ลูปอีกครั้ง

fast:
 serout serpin,n9600,[key] อธิบายไปแล้ว

getkey:
   pause 50 คือการพัก โปรแกรม 50ms
getkeyu:
   portb = 0 กำหนด portb ให้เป็น เอาท์พุท หรือ เป็นกราวน์ ทุกขา
   Trisb = $f0 เป็นการกำหนด portB ให้เป็น อินพุต 4 บน และ 4 บิทล่างเป็นเอาท์พุต
   if portB >> 4 != $F then getkeyu เป็น ฟังชั่นย้อนกลับ ถ้า portB มากกว่า4
แต่ไม่เท่ากับ 16 จะย้อนกลับไปที่ lable getkeyu

พอแล้วเน้อ เมื่อ ผมบอกเท่าที่รู้ถ้าผิดก้อขออภัย


หัวข้อ: Re: ใครเก่ง picbasic pro ช่วยตอบหน่อยครับ
เริ่มหัวข้อโดย: jam_007 ที่ กรกฎาคม 19, 2009, 09:59:00 am
 THANK!!