If you have a computer with a serial port (or USB to serial adapter) you can just connect pin 2 to pin 3 (loopback) and can write code that sends messages and receives messages
over hardware. Simple to set up, and it will get you going with real hardware. You can use StreamDevice, the asynRecord, and other code for testing an experimenting.
Mark
From: Hulusi Öz [mailto:[email protected]]
Sent: Monday, July 25, 2016 2:58 PM
To: Mark Rivers; [email protected]
Subject: Re: EPICS-Arduino Serial Communication via Asyn-Stream Drivers
How can i solve that problem ? Can I re-configure it with EPICS functionally ?
Yes, I want to talk a real hardware. But, since I am new at this area, I thought, if I can do database stuff with arduino in terms of serial communication, I may handle with a real hardware.
I don't know what the things requires for Caen digitizier, the things may change from hardware to hardware. I mean, talking to arduino and Caen digitizer may not be the same stuff. But, I've just started at some point.
Best Regards..
2016-07-25 22:51 GMT+03:00 Mark Rivers <[email protected]>:
The files arduino.db and /opt/epics/helloWorld/db/helloWorldIOC.db are some local files that were specific to the application in that Web page you found. They don’t come with EPICS
base.
What is it you would like to try before beginning to work with the Caen digitizer? Talking to real hardware?
Mark
From:
[email protected] [mailto:[email protected]]
On Behalf Of Hulusi Öz
Sent: Monday, July 25, 2016 2:44 PM
To: [email protected]
Subject: EPICS-Arduino Serial Communication via Asyn-Stream Drivers
Hi Everyone,
I have just been dealing with EPICS and its applications since a few weeks. I've done basic things such as creating IOC, making MEDM display,communicating Octave and etc..And I've
got help most of the time in this tech-talk.
I am now dealing with communication a device that is supported by EPICS. I have got a Digitizier which is manufactured by CAEN. But before I deal with that device, I want to figure
out the database configuration in an application. Therefore, I research on the Internet and in this website. I found a quite basic example which is :
I've just done the previous sections of this example,and also followed the steps in that link. However, when I run it I've got nothing.
#!/opt/epics/helloWorldIOC/bin/linux-x86_64/helloWorldIOC
## You may have to change helloWorldIOC to something else
## everywhere it appears in this file
epicsEnvSet(STREAM_PROTOCOL_PATH,"helloWorldIOCApp/Db")
## Register all support components
dbLoadDatabase("../../dbd/helloWorldIOC.dbd",0,0)
helloWorldIOC_registerRecordDeviceDriver(pdbbase)
drvAsynSerialPortConfigure("SERIALPORT","/dev/ttyACM0",0,0,0)
asynSetOption("SERIALPORT",-1,"baud","115200")
asynSetOption("SERIALPORT",-1,"bits","8")
asynSetOption("SERIALPORT",-1,"parity","none")
asynSetOption("SERIALPORT",-1,"stop","1")
asynSetOption("SERIALPORT",-1,"clocal","Y")
asynSetOption("SERIALPORT",-1,"crtscts","N")
dbLoadRecords("db/arduino.db","PORT='SERIALPORT'")
filename="../dbLexRoutines.c" line number=240
No such file or directory dbRead opening file db/arduino.db
dbLoadRecords("/opt/epics/helloWorld/db/helloWorldIOC.db","user=hulusi")
filename="../dbLexRoutines.c" line number=240
No such file or directory dbRead opening file
/opt/epics/helloWorld/db/helloWorldIOC.db
############################################################################
## EPICS R3.14.12.4 $Date: Mon 2013-12-16 15:51:45 -0600$
## EPICS Base built Jul 21 2016
############################################################################
iocRun: All initialization complete
## Start any sequence programs
#seq snchelloWorldIOC,"user=hulusi"
I guess, the problem is due to the colored line in this output. But I'm not sure that.
Is it so ? If it is like that, how can I figure it out ?
If it isn't like that, what does the thing cause this problem ?
|