RadioNet
Search datasheet  
RadioNet
РЕЙТИНГ ТЕНДЕРЫ ИССЛЕДОВАНИЯ DATASHEETS КАТАЛОГ СХЕМ СХЕМЫ ФОРУМ ДОСКА ОБЪЯВЛЕНИЙ
  ПОИСК ПО САЙТУ
  Опции:    
  ВХОД
 Логин:
 Пароль:
Забыли пароль?
 
WEB-RING CHIPINFO: электроника, электронные компоненты иприборы.

Cайт и форум для электриков
HARDW.net

Передача отладочной информации из PIC-контроллера через COM-порт


В процессе отладки любой программы на PIC, всегда полезно посмотреть что же получилось в результате каких-либо действий. Если в устройстве есть LCD, то можно конечно отладочную информацию выводить на него. Однако если большинство выводов портов занято, подключить LCD проблематично. Но если есть хоть ОДИН свободный вывод порта, то можно передать результат каких-либо вычислений через COM-порт в компьютер. При этом можно обойтись без преобразования уровней напряжения для RS-232. Для этого желательно, чтобы PIC запитывался от 5 вольт.

Работа схемы опробована на PIC16F84, но я не вижу препятствий, почему не может быть использован практически ЛЮБОЙ PIC. Правда, подпрограмма расчитана на частоту 4 Мгц, для другой частоты просто нужно подкорректировать подпрограммы пауз:
;===============================================================================================
;передача символа по протоколу RS232, скорость 9600, data = 8, nonparity, 
; 1 stopbit, 4 Мгц, символ в Char_RS232
;=============================================================================================== 
#define _TxD 
PORTB, 5 
PutChar_RS232     
movlw .8     
movwf tmpdelay01     
bcf _TxD                           ; стартовый бит     
call delay_95mks     
call delay_8mks     
m_PutChar_RS232_01               ; данные      
rrf Char_RS232, f     
btfss STATUS,C     
bcf _TxD     
btfsc STATUS,C     
bsf _TxD                            
call delay_95mks        
decfsz tmpdelay01,f     
goto m_PutChar_RS232_01      
bsf _TxD                           ; бит четности     
call delay_95mks      
call delay_8mks     
bsf _TxD                            ; стоповый бит     
call delay_95mks     
call delay_8mks     
rrf Char_RS232, f      
return delay_95mks     
movlw .22     
movwf  tmpdelay01     
nop     
decfsz tmpdelay01, f     
goto $-2     
nop      
nop     
return 
delay_8mks     
nop     
nop     
nop     
nop     
return 
;=========================================
Для создания программы работы с COM-портом предлагается класс для Win32 на Builder C++ (файл mserial.h). В классе MSerial используются только API функции, так что его переделать под любой компилятор — дело пяти минут. Исходный текст примера программы, читающей 2 байта из COM-порта размещён в файле prog.cpp.

Автор проекта: Юрий Горский (E-mail: yuragv@mbox.com.ua)



Передача отладочной информации из PIC-контроллера через COM-порт
Просмотров сегодня: 4992, всего: 4992
РЕЙТИНГ ТЕНДЕРЫ ИССЛЕДОВАНИЯ DATASHEETS КАТАЛОГ СХЕМ СХЕМЫ ФОРУМ ДОСКА ОБЪЯВЛЕНИЙ


Copyright © 2002-2021 RadioNet Admin

Страница создана за 0,03409 секунд.