Например TDA7294

Форум РадиоКот • Просмотр темы - Работа с COM портом
Форум РадиоКот
Здесь можно немножко помяукать :)





Текущее время: Пт май 23, 2025 19:07:55

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 44 ]    , , 3
Автор Сообщение
Не в сети
 Заголовок сообщения: Re: Работа с COM портом
СообщениеДобавлено: Пн окт 19, 2015 21:26:59 
Друг Кота
Аватар пользователя

Карма: 1
Рейтинг сообщений: 178
Зарегистрирован: Пн окт 11, 2010 19:00:08
Сообщений: 3373
Рейтинг сообщения: 0
Видимо процедуре OW_ReadROM в первом аргументе было передано число 0, вместо указателя на структуру OW_Buff. На скриншоте этот участок кода не виден.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Работа с COM портом
СообщениеДобавлено: Вт окт 20, 2015 16:47:18 
Родился

Зарегистрирован: Сб окт 10, 2015 18:26:37
Сообщений: 6
Рейтинг сообщения: 0
Мурик писал(а):
Видимо процедуре OW_ReadROM в первом аргументе было передано число 0, вместо указателя на структуру OW_Buff. На скриншоте этот участок кода не виден.

Кода здесь - кот наплакал:
Код:
XIncludeFile "OWire_Module.pbi"
UseModule OWire

Procedure Select_ComPort()
   Port.s = GetGadgetText(3)   
      If IsSerialPort(4)   ; Если с таким ИД порт уже открыт,     
           OW_ClosePort(4) ;   то закрываем его и
           SetGadgetColor(1,#PB_Gadget_BackColor, $0000FF);зажигаем красный свет
           SetGadgetText(2,"Открыть порт")
      Else
           OW_OpenPort(Port, 4); открываем порт.
              If IsSerialPort(4); Если  порт  открыт, то
                 SetGadgetColor(1,#PB_Gadget_BackColor, $00FF00); зажигаем зелёный свет
                 SetGadgetText(2,"Закрыть порт")
               Else
                 SetGadgetColor(1,#PB_Gadget_BackColor, $0000FF);
                 MessageRequester("Ошибка","Выбранный порт недоступен, выберите другой порт.",#PB_MessageRequester_Ok)
              EndIf
      EndIf 
EndProcedure
   
Procedure   DS_Number()
  Protected Text.s,  Dim Input_Byte.a(8)
  OW_ReadROM(*Input_Byte, 4)
  SetGadgetText(6,Text)  ;здесь покажем номер
EndProcedure
   
If OpenWindow(0, 0, 0, 250, 150, "Тестер DS", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
  TextGadget(1, 110, 30, 20, 20, "");  Индикатор
  SetGadgetColor(1,#PB_Gadget_BackColor, $0000FF)
  ButtonGadget(2, 130, 30, 100, 20, "Открыть порт")
  ComboBoxGadget(3, 20, 30, 90, 20)
        For i=1 To 16         
            AddGadgetItem(3,-1,"COM" + Str(i))         
        Next i
        SetGadgetState(3,0)
  ButtonGadget(5, 20, 90, 100, 20, "Номер ")
  TextGadget(6, 130, 93, 120, 20, "");  Номер
 
  Repeat
    Event = WaitWindowEvent()
           If Event=#PB_Event_Gadget       
             Gadget = EventGadget ( ) ;узнаём,какой гаджет был активирован
             If Gadget = 2; нажата кнопка "Открыть порт"               
                Select_ComPort()
             EndIf
             If Gadget = 5; нажата кнопка "Номер"
                DS_Number()
             EndIf
           EndIf
  Until Event=#PB_Event_CloseWindow
EndIf
End

ПодскажИте, пожалуйста, что я не доделал, чтобы получить принятые байты? В текст я их сам преобразую, этого в коде нет.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Работа с COM портом
СообщениеДобавлено: Вт окт 20, 2015 17:11:53 
Друг Кота
Аватар пользователя

Карма: 1
Рейтинг сообщений: 178
Зарегистрирован: Пн окт 11, 2010 19:00:08
Сообщений: 3373
Рейтинг сообщения: 0
В 24 строке должен быть указатель на массив, а не просто указатель неизвестно на что.
Код:
OW_ReadROM(@Input_Byte(), 4)
Символ @ - получение указателя на нужный объект, которым может быть переменная, экземпляр структуры, массив, связный список, процедура и т. д.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Работа с COM портом
СообщениеДобавлено: Вт окт 20, 2015 18:43:45 
Родился

Зарегистрирован: Сб окт 10, 2015 18:26:37
Сообщений: 6
Рейтинг сообщения: 0
Мурик писал(а):
В 24 строке должен быть указатель на массив, а не просто указатель неизвестно на что.
Код:
OW_ReadROM(@Input_Byte(), 4)
Символ @ - получение указателя на нужный объект, которым может быть переменная, экземпляр структуры, массив, связный список, процедура и т. д.

Спасибо, заработало! А правильнописАние у меня хромает...


Вернуться наверх
 
Открыт интернет-магазин MEAN WELL.Market – весь ассортимент MEAN WELL, выгодные цены

Открыта удобная площадка с выгодными ценами, поставляющая весь ассортимент продукции, производимой компанией MEAN WELL – от завоевавших популярность и известных на рынке изделий до новинок. MEAN WELL.Market предоставляет гарантийную и сервисную поддержку, удобный подбор продукции, оперативную доставку по России. На сайте интернет-магазина посетители смогут найти обзоры, интересные статьи о применении, максимальный объем технических сведений.

Подробнее>>
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 44 ]    , , 3

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 6


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y