Микроконтроллер

Общие вопросы программирования, алгоритмы и т.п.

Модератор: Модераторы

Микроконтроллер

Сообщение tema » 12.04.2017 23:59:01

Есть ли у кого-нибудь информация о работе с сабжем под линуксом?
Интересуют этапы:
1. Программирование контроллера. Возможно ли на fpc?
2. Допустим он запрограммирован получить команду '12345' и начать мигать светодиодом. Подключили плату по usb (не знаю как толи в режиме эмуляции COM порта, толи ещё как вообще возможно?) Есть ли примеры на fpc как отправить команду '12345'?
Ещё раз обращаю внимание: всё под линуксом и на lazarus.
Под виндой всё и так работает:
Есть программа на дельфи с компонентом COM порта. Подключаем по usb эмулируется com-порт и через компонент дельфёвый отправляются/принимаются данные. Нужно всё то же самое, но под линукс+лазарус. В идеале ещё и на отечественном контроллере. У нас же есть с архитектурой ARM К1986ВЕ92QI
tema
постоялец
 
Сообщения: 310
Зарегистрирован: 24.03.2011 20:19:27

Re: Микроконтроллер

Сообщение olegy123 » 13.04.2017 11:16:03

Программирование для встроенных систем:
http://wiki.freepascal.org/TARGET_Embedded
поищите может уже есть под ваш контроллер.

СОМпорт в линухе
реальный:
/dev/ttyS[x]
usb:
/dev/ttyUSB[x]
Код: Выделить всё
procedure TForm1.Button3Click(Sender: TObject);
var
  SerBuf : Array[0..511] of byte;
  TmpBuf : Array[0..63] of byte;
  blen : integer;
begin
  ser:=TBlockSerial.Create;
  Sleep(300);
  ser.LinuxLock := false;
  ser.Connect('/dev/ttyUSB0');
  Sleep(300);
  ser.config(9600,8,'N',SB1,false,false);
  blen := MakeBuf(@SerBuf[0]);
  Sleep(300);
  ser.SendBuffer(@SerBuf[0],blen);
  Sleep(300);
  ser.RecvBufferEx(@TmpBuf[0], 1, 500);
  Sleep(300);
  ser.free;
end;

взято тут:
http://forum.lazarus.freepascal.org/ind ... ic=21552.0
olegy123
постоялец
 
Сообщения: 274
Зарегистрирован: 25.02.2016 12:10:20

Re: Микроконтроллер

Сообщение mig-31 » 13.04.2017 15:10:00

Все просто. Используйте unit Synaser из Synapse.

USB: /dev/ttyUSB0, dev/ttyUSB1,...
USB как модем: /dev/ttyACM0, dev/ttyACM1
на борту материнской платы: /dev/ttyS0, /dev/ttyS1,...

Из терминала задайте и увидите все tty в системе:
Код: Выделить всё
dmeg |grep tty
mig-31
постоялец
 
Сообщения: 156
Зарегистрирован: 14.07.2011 13:46:48

Re: Микроконтроллер

Сообщение fedan » 13.04.2017 16:36:00

mig-31 писал(а):
Код: Выделить всё
dmeg |grep tty

Код: Выделить всё
dmesg | grep tty

fixed
fedan
новенький
 
Сообщения: 25
Зарегистрирован: 15.09.2016 21:18:48

Re: Микроконтроллер

Сообщение tema » 13.04.2017 19:13:34

Спасибо!
tema
постоялец
 
Сообщения: 310
Зарегистрирован: 24.03.2011 20:19:27


Вернуться в Общее

Кто сейчас на конференции

Сейчас этот форум просматривают: Bing [Bot] и гости: 6

Рейтинг@Mail.ru