ā02-17-2014 03:47 AM
selamat sore, saya mencoba mengirim data dari pc ke mikrokontroler (AVR) menggunakan visa write. Masalah yang timbul adalah pada saat angka 10 terkirim ke mikrokontroler akan terbaca menjadi 1 dan 0 begitu juga 11 akan terbaca 1 dan 1 begitu selanjutnya. berikut saya lampirkan VI nya. mohon bantuan. termakasih
ā02-17-2014 08:40 PM
mas catur_3414
kalau boleh saya tahu coding sampeyan di AVR nya gimana ?
saya baru coba2 visa read/write tapi ke arduino
berikut saya lampirkan screen shot nya
refer to posting pak yusman
Terima kasih
Semoga bisa sedikit membantu
ā02-18-2014 02:33 AM
Kalo icon seperti ini kenapa ya. ada merah sedikit padahal di yang lain tidak ada.
ā02-18-2014 04:10 AM
itu nama nya coercion dot mas burnsky, dengan tanda itu LabVIEW mengindikasikan bahwa data yg sampean masukkan ke terminal dari node tersebut akan secara otomatis di convert oleh LabVIEW menjadi jenis data yg sesuai
refer ke context help, terminal dari node yg sampean pilih itu require nya numeric data type unsigned byte integer (U8)
sampean bisa pake to unsigned byte integer untuk meng convert data agar sesuai dengan requirement dari terminal node tersebut
@mas catur_3414
bagaimana mas kelanjutan nya ?
apa yg dimaksud sampeyan menginginkan data berupa hex yg terbaca dari AVR e.g 10 = A ?
ā02-18-2014 08:11 AM
makasih responya mas, nanti saya coba diagram labview sampeyan. btw saya pake BASCOMAVR berikut codenya
$regfile = "m32def.dat"
$crystal = 11059200
$baud = 9600
Enable Interrupts
Dim A As String * 2
Dim B As Byte
Print "OK"
Wait 1
Do
A = Waitkey()
Print A
Loop
jadi saya ngirim dari labview ke AVR terus AVR kembali mengirim ke labview.
makasih mas
ā02-18-2014 08:12 AM
maaf mas ini apa ya??
ā02-18-2014 09:20 AM
Gambarnya ga keluar mas...
ā02-18-2014 10:12 PM
mas catur_3414
sepertinya kita terjebak dalam convertion data type
tolong ingatkan kalau saya salah, fungsi Waitkey() pada BASCOMAVR serupa dengan Serial.available () pada arduino IDE
pada arduino IDE, Serial.available () akan membutuhkan/menghasilkan tipe data integer, begitu juga dengan Waitkey() pada BASCOMAVR
Pada program sampeyan di LabVIEW, sampeyan bermaksud mengirim data hexadecimal string integer kepada AVR, jadi jika anda mengirim 11 karena ada konversi data ke hex di program LabVIEW sampeyan maka sampeyan menginginkan huruf "B" yg muncul
makanya sampeyan menggunakan variabel Dim A as String * 2 , tapi kemudian fungsi A = Waitkey() melakukan konversi data lagi ke integer, asumsi saya ini yg bermasalah
untuk mengatasinya dalam arduino saya gunakan perintah Serial.println(val,HEX) , mungkin dalam AVR bisa dengan Print hex(A)
semoga bisa membantu
Terima kasih
ā02-18-2014 10:53 PM
ha..ha..
setau saya di BASCOM AVR ada 3 perintah ngirim serial rs232, yaitu waitkey, inkey dan input semuanya udah saya coba tapi hasilnya sama aja. itu saya ubah ke hex karena udah frustasi gak bisa ngirim lebih dari angka 9, kalo pake hex kan minimal saya bisa ngirim sampai F (15) jadi ya lumayan lah daripada sampai 9. begitu juga dim as string*2 itu juga udah frustasi karena udah saya coba pake byte juga tetep.
o iya mas icon di diagrram sampeyan yang ada gambar pensilnya itu apa ya, koq saya nyari gak ketemu2.
makasih..
ā02-18-2014 11:12 PM
jadi masalah sampeyan, bisa mengirim data tapi cuma 0 - 9 ? ketika 10 jadi 1 dan 0 ?
selain string dan byte sampeyan udah coba tipe data apa lagi ?
lah yo di sampai ken sejelas2 nya to mas, usaha sampeyan sudah sampai mana, hasil nya bagaimana, hasil yg pengen dicapai kayak apa.. biar yg mbantu bisa kasih progres yg bagus ke sampeyan
oh yg itu, nama nya clear errors.vi
cari di dialog & user interface
Terima kasih