سلام خدمت همه اساتید:
در زیر برنامه ای نوشتم و آنرا با hyper terminal چک کردم و بدون استفاده از دستور input داده های ارسالی از میکرو بصورت متوالی نمایش داده میشه.میخواستم برنامه ای مثلا با ویژوال بیسیک نوشته بشه و داده ها هم دیده بشن البته مجزا و بشه از طریق کامپیوتر تنظیمات انجام داد و روی lcd دید. البته فکر کنم هر رشته داده رو باید آدرس دهی کرد تا بتونیم در کامپیوتر و برنامه ویژوال بیسیک مجزا کرد . در این برنامه مقدار دمای 4 محیط به کامپیوتر ارسال شود و در ضمن بتوان از طریق کامپیوتر 4 داده را تنظیم کرد .
در زیر برنامه ای نوشتم و آنرا با hyper terminal چک کردم و بدون استفاده از دستور input داده های ارسالی از میکرو بصورت متوالی نمایش داده میشه.میخواستم برنامه ای مثلا با ویژوال بیسیک نوشته بشه و داده ها هم دیده بشن البته مجزا و بشه از طریق کامپیوتر تنظیمات انجام داد و روی lcd دید. البته فکر کنم هر رشته داده رو باید آدرس دهی کرد تا بتونیم در کامپیوتر و برنامه ویژوال بیسیک مجزا کرد . در این برنامه مقدار دمای 4 محیط به کامپیوتر ارسال شود و در ضمن بتوان از طریق کامپیوتر 4 داده را تنظیم کرد .
کد:
''''''''''''''''''''''''' ' AVR-serial port ' ''''''''''''''''''''''''' $regfile = "m16def.dat" $crystal = 2000000 $baud = 9600 Config Lcd = 20 * 4 Config Lcdpin = Pin , Db4 = Portd.4 , Db5 = Portd.5 , Db6 = Portd.6 , Db7 = Portd.7 , E = Portd.2 , Rs = Portd.3 Config Adc = Single , Prescaler = Auto , Reference = Internal Config Pinc.7 = Output Deflcdchar 1 , 12 , 18 , 18 , 12 , 32 , 32 , 32 , 32 Dim Adc0 As Word Dim Temp0 As Integer Dim Adc1 As Integer Dim Temp1 As Integer Dim Adc2 As Integer Dim Temp2 As Integer Dim Adc3 As Integer Dim Temp3 As Integer Dim In0 As Integer Dim In1 As Integer Dim In2 As Integer Dim In3 As Integer Start Adc Cursor Off Cls Do '---- read ADC Adc0 = Getadc(0) Temp0 = Adc0 / 4 Adc1 = Getadc(1) Temp1 = Adc1 / 4 Adc2 = Getadc(2) Temp2 = Adc2 / 4 Adc3 = Getadc(3) Temp3 = Adc3 / 4 '---- send to lcd 20*4 Locate 1 , 1 Lcd "Temp0:" ; Temp0 ; Chr(0) ; "c " Locate 2 , 1 Lcd "Temp1:" ; Temp1 ; Chr(0) ; "c " Locate 3 , 1 Lcd "Temp2:" ; Temp2 ; Chr(0) ; "c " Locate 4 , 1 Lcd "Temp3:" ; Temp3 ; Chr(0) ; "c " Locate 1 , 13 Lcd "Adj0:" ; In0 Locate 2 , 13 Lcd "Adj1:" ; In1 Locate 3 , 13 Lcd "Adj2:" ; In2 Locate 4 , 13 Lcd "Adj3:" ; In3 '---- delay Waitms 200 '---- AVR send to serial port Print "Temp0:" ; Temp0 Print "Temp1:" ; Temp1 Print "Temp2:" ; Temp2 Print "Temp3:" ; Temp3 '---- AVR recive from serial port Input "Adj0:" , In0 Input "Adj1:" , In1 Input "Adj2:" , In2 Input "Adj3:" , In3 Loop End 'end program
دیدگاه