EasyManua.ls Logo

Delta Electronics ASDA-B2 series - Page 282

Delta Electronics ASDA-B2 series
335 pages
Print Icon
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
ASDA-B2 Chapter 8 MODBUS Communications
Revision September 2013 8-15
#define BRDL 0x0000
#define IER 0x0001
#define BRDH 0x0001
#define LCR 0x0003
#define MCR 0x0004
#define LSR 0x0005
#define MSR 0x0006
unsigned char rdat[60];
/* read 2 data from address 0200H of ASD with address 1 */
unsigned char tdat[60]={‘:’,’0’,’1’,’0’,’3’,’0’,’2’,’0’,’0’,’0’,’0’,’0’,’2’,’F’,’8’,’\r’,’\n’};
void main() {
int I;
outportb(PORT+MCR,0x08); /* interrupt enable */
outportb(PORT+IER,0x01); /* interrupt as data in */
outportb(PORT+LCR,( inportb(PORT+LCR) | 0x80 ) );
/* the BRDL/BRDH can be access as LCR.b7 == 1 */
outportb(PORT+BRDL,12);
outportb(PORT+BRDH,0x00);
outportb(PORT+LCR,0x06); /* set prorocol
<7,E,1> = 1AH, <7,O,1> = 0AH
<8,N,2> = 07H <8,E,1> = 1BH
<8,O,1> = 0BH
*/
for( I = 0; I<=16; I++ ) {
while( !(inportb(PORT+LSR) & 0x20) ); /* wait until THR empty */
outportb(PORT+THR,tdat[I]); /* send data to THR */
}
I = 0;
while( !kbhit() ) {
if( inportb(PORT+LSR)&0x01 ) { /* b0==1, read data ready */
rdat[I++] = inportb(PORT+RDR); /* read data from RDR */
}
}
}
VARITEL INGENIERIA ELECTRONICA S.A.
info@varitel.com - www.varitel.com - Tel. (54) 11-4243-1171 / Fax: (54) 11-4292-7545
Manuel Baliña 456, Lomas de Zamora (B1832CCJ) Buenos Aires, Argentina.

Table of Contents

Related product manuals