Ik ben bezig met mijn modelbaan besturing. Ik wil mijn Atmel aansturen met een adres byte en een data byte. De software wil ik in Visual basic doen en ik gebruik de compoort.
De Atmel maakt alleen gebruik van de TXD en de RXD compoort lijn.
Mijn eigen programma kan ik niet aan de praat krijgen. Ben vervolgens gaan testen met het programma MicroRidge (compoort test programma) en daar kan ik mijn Atmel wel mee aansturen. Dus ik weet dat de hardware het wel doet.
De bedoeling is dus bij de atmel dat hij een adres (bijvoorbeeld 6 ) en de daarbij behorende data (bijvoorbeeld 4) krijgt. De Atmel schakelt dan het relais met de decimale waarde 4 aan. Tevens leest de Atmel de ingangen bij het geselecteerde adres in en stuurt die door naar de pc.
Hier een foto van de besturing:
Met het compoort analyse programma PortMon zie ik wel verschillen.
Met mijn programma:
* decimaal 6 versturen = 36 met de HEX instelling in Portmon
* decimaal 6 versturen = 6 met de ASCII instelling in Portmon
Met Microridge:
* decimaal 6 versturen = 06 met de HEX instelling in Portmon
* decimaal 6 versturen = . met de ASCII instelling in Portmon
Hieronder het Visual basic programma:

https://4.bp.blogspot.com/-eE4bIIwh2gQ/ ... VBprog.jpg
Hieronder een uitdraai van portmon. En je ziet dat ik meerdere bytes heb verzonden. :
- Code: Select all
compoorttest31-8-16 eigen programma werkt niet.
0.00006761 compoort-test29 IRP_MJ_CREATE Serial0 SUCCESS Options: Open
0.00000307 compoort-test29 IOCTL_SERIAL_GET_PROPERTIES Serial0 SUCCESS
0.00000363 compoort-test29 IOCTL_SERIAL_GET_MODEMSTATUS Serial0 SUCCESS
0.00000140 compoort-test29 IOCTL_SERIAL_GET_BAUD_RATE Serial0 SUCCESS
0.00000140 compoort-test29 IOCTL_SERIAL_GET_LINE_CONTROL Serial0 SUCCESS
0.00000140 compoort-test29 IOCTL_SERIAL_GET_CHARS Serial0 SUCCESS
0.00000112 compoort-test29 IOCTL_SERIAL_GET_HANDFLOW Serial0 SUCCESS
0.00000140 compoort-test29 IOCTL_SERIAL_GET_BAUD_RATE Serial0 SUCCESS
0.00000112 compoort-test29 IOCTL_SERIAL_GET_LINE_CONTROL Serial0 SUCCESS
0.00000112 compoort-test29 IOCTL_SERIAL_GET_CHARS Serial0 SUCCESS
0.00000140 compoort-test29 IOCTL_SERIAL_GET_HANDFLOW Serial0 SUCCESS
0.00000810 compoort-test29 IOCTL_SERIAL_SET_BAUD_RATE Serial0 SUCCESS Rate: 9600
0.00000391 compoort-test29 IOCTL_SERIAL_SET_RTS Serial0 SUCCESS
0.00000419 compoort-test29 IOCTL_SERIAL_CLR_DTR Serial0 SUCCESS
0.00000307 compoort-test29 IOCTL_SERIAL_SET_LINE_CONTROL Serial0 SUCCESS StopBits: 1 Parity: NONE WordLength: 8
0.00000168 compoort-test29 IOCTL_SERIAL_SET_CHAR Serial0 SUCCESS EOF:1a ERR:0 BRK:0 EVT:1a XON:11 XOFF:13
0.00000587 compoort-test29 IOCTL_SERIAL_SET_HANDFLOW Serial0 SUCCESS Shake:0 Replace:40 XonLimit:1024 XoffLimit:1024
0.00000140 compoort-test29 IOCTL_SERIAL_GET_BAUD_RATE Serial0 SUCCESS
0.00000112 compoort-test29 IOCTL_SERIAL_GET_LINE_CONTROL Serial0 SUCCESS
0.00000112 compoort-test29 IOCTL_SERIAL_GET_CHARS Serial0 SUCCESS
0.00000140 compoort-test29 IOCTL_SERIAL_GET_HANDFLOW Serial0 SUCCESS
0.00000838 compoort-test29 IOCTL_SERIAL_SET_BAUD_RATE Serial0 SUCCESS Rate: 9600
0.00000419 compoort-test29 IOCTL_SERIAL_SET_RTS Serial0 SUCCESS
0.00000391 compoort-test29 IOCTL_SERIAL_CLR_DTR Serial0 SUCCESS
0.00000279 compoort-test29 IOCTL_SERIAL_SET_LINE_CONTROL Serial0 SUCCESS StopBits: 1 Parity: NONE WordLength: 8
0.00000140 compoort-test29 IOCTL_SERIAL_SET_CHAR Serial0 SUCCESS EOF:1a ERR:0 BRK:0 EVT:1a XON:11 XOFF:13
0.00000251 compoort-test29 IOCTL_SERIAL_SET_HANDFLOW Serial0 SUCCESS Shake:0 Replace:40 XonLimit:1024 XoffLimit:1024
0.00000419 compoort-test29 IOCTL_SERIAL_CLR_DTR Serial0 SUCCESS
0.00000140 compoort-test29 IOCTL_SERIAL_GET_BAUD_RATE Serial0 SUCCESS
0.00000112 compoort-test29 IOCTL_SERIAL_GET_LINE_CONTROL Serial0 SUCCESS
0.00000112 compoort-test29 IOCTL_SERIAL_GET_CHARS Serial0 SUCCESS
0.00000112 compoort-test29 IOCTL_SERIAL_GET_HANDFLOW Serial0 SUCCESS
0.00000782 compoort-test29 IOCTL_SERIAL_SET_BAUD_RATE Serial0 SUCCESS Rate: 9600
0.00000419 compoort-test29 IOCTL_SERIAL_CLR_RTS Serial0 SUCCESS
0.00000419 compoort-test29 IOCTL_SERIAL_CLR_DTR Serial0 SUCCESS
0.00000251 compoort-test29 IOCTL_SERIAL_SET_LINE_CONTROL Serial0 SUCCESS StopBits: 1 Parity: NONE WordLength: 8
0.00000112 compoort-test29 IOCTL_SERIAL_SET_CHAR Serial0 SUCCESS EOF:1a ERR:0 BRK:0 EVT:1a XON:11 XOFF:13
0.00000559 compoort-test29 IOCTL_SERIAL_SET_HANDFLOW Serial0 SUCCESS Shake:0 Replace:0 XonLimit:1024 XoffLimit:1024
0.00000419 compoort-test29 IOCTL_SERIAL_CLR_RTS Serial0 SUCCESS
0.00000168 compoort-test29 IOCTL_SERIAL_SET_TIMEOUTS Serial0 SUCCESS RI:-1 RM:-1 RC:-2 WM:0 WC:0
0.00000307 compoort-test29 IOCTL_SERIAL_SET_WAIT_MASK Serial0 SUCCESS Mask: RXCHAR RXFLAG CTS DSR RLSD BRK ERR RING
0.00000168 compoort-test29 IOCTL_SERIAL_SET_QUEUE_SIZE Serial0 SUCCESS InSize: 1000 OutSize: 1000
37.80507243 compoort-test29 IOCTL_SERIAL_WAIT_ON_MASK Serial0 SUCCESS
0.00002235 compoort-test29 IRP_MJ_WRITE Serial0 SUCCESS Length 1: 36 <= portmon op HEX
0.00001956 compoort-test29 IRP_MJ_WRITE Serial0 SUCCESS Length 1: 34 <= portmon op HEX
0.00000391 compoort-test29 IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
11.97564551 compoort-test29 IOCTL_SERIAL_WAIT_ON_MASK Serial0 SUCCESS
0.00003185 compoort-test29 IRP_MJ_WRITE Serial0 SUCCESS Length 1: 6 <=portmon op ASCII
0.00002291 compoort-test29 IRP_MJ_WRITE Serial0 SUCCESS Length 1: 4 <=portmon op ASCII
0.00000419 compoort-test29 IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
13.64046883 compoort-test29 IOCTL_SERIAL_WAIT_ON_MASK Serial0 SUCCESS
0.00002822 compoort-test29 IRP_MJ_WRITE Serial0 SUCCESS Length 1: 4 <=portmon op ASCII
0.00002989 compoort-test29 IRP_MJ_WRITE Serial0 SUCCESS Length 2: 64 <=portmon op ASCII
0.00000391 compoort-test29 IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
4.86393829 compoort-test29 IOCTL_SERIAL_WAIT_ON_MASK Serial0 SUCCESS
0.00002375 compoort-test29 IRP_MJ_WRITE Serial0 SUCCESS Length 1: 6 <=portmon op ASCII
0.00000363 compoort-test29 IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
0.69714922 compoort-test29 IOCTL_SERIAL_WAIT_ON_MASK Serial0 SUCCESS
0.00002989 compoort-test29 IRP_MJ_WRITE Serial0 SUCCESS Length 2: 15 <=portmon op ASCII
0.00000391 compoort-test29 IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
26.03316008 compoort-test29 IOCTL_SERIAL_WAIT_ON_MASK Serial0 SUCCESS
0.00000978 compoort-test29 IRP_MJ_FLUSH_BUFFERS Serial0 SUCCESS
0.00001537 compoort-test29 IOCTL_SERIAL_SET_WAIT_MASK Serial0 SUCCESS Mask:
0.00000475 compoort-test29 IOCTL_SERIAL_CLR_DTR Serial0 SUCCESS
0.00000168 compoort-test29 IRP_MJ_FLUSH_BUFFERS Serial0 SUCCESS
0.00000307 compoort-test29 IOCTL_SERIAL_PURGE Serial0 SUCCESS Purge: RXABORT RXCLEAR
0.00000168 compoort-test29 IOCTL_SERIAL_PURGE Serial0 SUCCESS Purge: TXABORT TXCLEAR
0.00000251 compoort-test29 IRP_MJ_CLEANUP Serial0 SUCCESS
0.00031037 compoort-test29 IRP_MJ_CLOSE Serial0 SUCCESS
**************************************************************************************************************************
*************************************************************************************************************************
MicroRidge **** met programma doet hij wel. ******
0.00006090 ComTestSerial.e IRP_MJ_CREATE Serial0 SUCCESS Options: Open
0.00000838 ComTestSerial.e IOCTL_SERIAL_SET_QUEUE_SIZE Serial0 SUCCESS InSize: 65536 OutSize: 65536
0.00000168 ComTestSerial.e IOCTL_SERIAL_SET_TIMEOUTS Serial0 SUCCESS RI:-1 RM:0 RC:0 WM:0 WC:0
0.00000112 ComTestSerial.e IOCTL_SERIAL_GET_BAUD_RATE Serial0 SUCCESS
0.00000112 ComTestSerial.e IOCTL_SERIAL_GET_LINE_CONTROL Serial0 SUCCESS
0.00000140 ComTestSerial.e IOCTL_SERIAL_GET_CHARS Serial0 SUCCESS
0.00000140 ComTestSerial.e IOCTL_SERIAL_GET_HANDFLOW Serial0 SUCCESS
0.00000838 ComTestSerial.e IOCTL_SERIAL_SET_BAUD_RATE Serial0 SUCCESS Rate: 9600
0.00000419 ComTestSerial.e IOCTL_SERIAL_SET_RTS Serial0 SUCCESS
0.00000447 ComTestSerial.e IOCTL_SERIAL_SET_DTR Serial0 SUCCESS
0.00000279 ComTestSerial.e IOCTL_SERIAL_SET_LINE_CONTROL Serial0 SUCCESS StopBits: 1 Parity: NONE WordLength: 8
0.00000168 ComTestSerial.e IOCTL_SERIAL_SET_CHAR Serial0 SUCCESS EOF:d ERR:ff BRK:ff EVT:ff XON:11 XOFF:13
0.00000838 ComTestSerial.e IOCTL_SERIAL_SET_HANDFLOW Serial0 SUCCESS Shake:1 Replace:80000040 XonLimit:100 XoffLimit:100
0.00000223 ComTestSerial.e IOCTL_SERIAL_SET_WAIT_MASK Serial0 SUCCESS Mask: RXCHAR TXEMPTY
0.00000363 ComTestSerial.e IOCTL_SERIAL_GET_MODEMSTATUS Serial0 SUCCESS
0.00000475 ComTestSerial.e IOCTL_SERIAL_SET_DTR Serial0 SUCCESS
0.00000503 ComTestSerial.e IOCTL_SERIAL_SET_RTS Serial0 SUCCESS
0.00001006 ComTestSerial.e IOCTL_SERIAL_GET_MODEMSTATUS Serial0 SUCCESS
0.00000196 ComTestSerial.e IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
0.00000279 ComTestSerial.e IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
0.00000698 ComTestSerial.e IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
0.00002319 ComTestSerial.e IRP_MJ_WRITE Serial0 SUCCESS Length 1: . <= portmon op ASCII
0.00000754 ComTestSerial.e IOCTL_SERIAL_GET_MODEMSTATUS Serial0 SUCCESS
0.00000223 ComTestSerial.e IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
0.00002067 ComTestSerial.e IRP_MJ_WRITE Serial0 SUCCESS Length 1: . <= portmon op ASCII
0.00000419 ComTestSerial.e IOCTL_SERIAL_GET_MODEMSTATUS Serial0 SUCCESS
0.00000223 ComTestSerial.e IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
0.00000196 ComTestSerial.e IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
0.00000419 ComTestSerial.e IRP_MJ_READ Serial0 SUCCESS Length 1: . <= portmon op ASCII
0.00000698 ComTestSerial.e IOCTL_SERIAL_GET_MODEMSTATUS Serial0 SUCCESS
0.00000307 ComTestSerial.e IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
0.00000251 ComTestSerial.e IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
0.00000251 ComTestSerial.e IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
0.00001928 ComTestSerial.e IRP_MJ_WRITE Serial0 SUCCESS Length 1: 06 <= portmon op HEX
0.00000391 ComTestSerial.e IOCTL_SERIAL_GET_MODEMSTATUS Serial0 SUCCESS
0.00000168 ComTestSerial.e IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
0.00001983 ComTestSerial.e IRP_MJ_WRITE Serial0 SUCCESS Length 1: 04 <= portmon op HEX
0.00000643 ComTestSerial.e IOCTL_SERIAL_GET_MODEMSTATUS Serial0 SUCCESS
0.00000251 ComTestSerial.e IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
0.00000140 ComTestSerial.e IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
0.00000419 ComTestSerial.e IRP_MJ_READ Serial0 SUCCESS Length 1: 00 <= portmon op HEX
0.00000531 ComTestSerial.e IOCTL_SERIAL_GET_MODEMSTATUS Serial0 SUCCESS
0.00000196 ComTestSerial.e IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
0.00002179 ComTestSerial.e IRP_MJ_WRITE Serial0 SUCCESS Length 1: 06 <= portmon op HEX
0.00000335 ComTestSerial.e IOCTL_SERIAL_GET_MODEMSTATUS Serial0 SUCCESS
0.00000168 ComTestSerial.e IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
0.00002011 ComTestSerial.e IRP_MJ_WRITE Serial0 SUCCESS Length 1: 02 <= portmon op HEX
0.00000391 ComTestSerial.e IOCTL_SERIAL_GET_MODEMSTATUS Serial0 SUCCESS
0.00000168 ComTestSerial.e IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
0.00000140 ComTestSerial.e IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
0.00000307 ComTestSerial.e IRP_MJ_READ Serial0 SUCCESS Length 1: 00 <= portmon op HEX
0.00000391 ComTestSerial.e IOCTL_SERIAL_GET_MODEMSTATUS Serial0 SUCCESS
0.00000223 ComTestSerial.e IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
Dus zou iemand weten waardoor Microridge wel doet met het versturen van dezelfde decimale getallen als mijn programma?
Mijn dank zal groot zijn.
Olaf