Технический форум по робототехнике.
$prog &HFF , &HE4 , &HD9 , &H00
$regfile = "m32def.dat"
$crystal = 8000000
$baud = 115200
$framesize = 16
$hwstack = 24
$swstack = 16
'Принимаемый символ
Dim Comchar As Byte
On Urxc Getchar 'переопределяем прерывание на передачу по usart
Enable Urxc
Enable Interrupts
'Основной цикл
Do
Loop
Getchar:
Comchar = Inkey()
Return
$regfile = "m32def.dat"
$crystal = 7372800
$baud = 115200
'Принимаемый символ
Dim Comchar As Byte
On Urxc Getchar
Enable Urxc
Enable Interrupts
Do
Loop
Getchar:
Comchar = Inkey()
Print Comchar
Return
114
111
109
13
WIKI писал(а):...Подключение Дальномеров
GP2D12, GP2D120, GP2Y0A02, GP2D15, GP2Y0D02, GP2Y0A21 оснащены одинаковым разъемом для подключения. Он называется Japan Solderless Terminal (JST). Разъем имеет 3 контакта: ground, vcc и output.
Так как дальномер излучает непрерывно,....
'------------------------------------------------------------------
' flyroman by roboforum.ru ®2010
' Программа приема и отправки сообщений по UART/ Bascom AVR
'------------------------------------------------------------------
$regfile = "m32def.dat"
$crystal = 7372800
$baud = 115200
$framesize = 16
$hwstack = 24
$swstack = 16
Dim Comchar As Byte 'принимаемый символ
Dim Buff As String * 20 'переменная буфер
Dim Bcount As Byte 'счетчик принятых байтов
Dim Flagbuf As Bit 'переменная Флаг конца приема сообщения
On Urxc Getchar 'переопределяем прерывание на передачу по usart
Enable Urxc 'включаем прерывание uart
Enable Interrupts
Reset Flagbuf
'Основной цикл
Do
If Flagbuf = 1 Then
Disable Serial
'If Mid(buff , 1 , 5) = "hello" Then 'проверка на приход определенного сообщения, в данном случае "hello"
'
' .....
'
'End If
Print Buff 'отправляем принятое сообщение
Print Bcount 'тправляем количество принятых байт
Buff = "" 'сбрасываем буфер
Reset Flagbuf 'сбрасываем флаг приема сообщения
Enable Serial
End If
Loop
Getchar:
Comchar = Inkey() 'принимаем 1 символ
If Comchar <> 13 Then 'проверяем является ли этот символ Enter'ом
Buff = Buff + Chr(comchar) 'если нет, то добавляем его в буфер
Incr Bcount 'увеличиваем на 1 счетчик байтов
Else
Flagbuf = 1 'если символ оказался "Enter", тогда флаг устанавливаем в 1. "Enter"- конец сообщения
End If
Return