ls7266r1 LSI Computer Systems, Inc., ls7266r1 Datasheet - Page 14

no-image

ls7266r1

Manufacturer Part Number
ls7266r1
Description
24-bit Dual-axis Quadrature Counter
Manufacturer
LSI Computer Systems, Inc.
Datasheet

Available stocks

Company
Part Number
Manufacturer
Quantity
Price
Part Number:
ls7266r1-S
Manufacturer:
TI
Quantity:
301
Part Number:
ls7266r1-S
Manufacturer:
ST
0
Part Number:
ls7266r1-S
Manufacturer:
LSI
Quantity:
20 000
Part Number:
ls7266r1-SD
Manufacturer:
SCL
Quantity:
430
7266R1-100704-14
#include<stdlib.h>
#include <stdio.h>
#include <conio.h>
#define XDATA(arg) (arg +0)
#define XCMD (arg) (arg + 1)
#define YDATA (arg) (arg +2)
#define YCMD (arg) (arg +3)
// RLD Reg.
#define RLD (arg) (arg | 0x80)
#define XRLD (arg) (arg | 0)
#define YRLD (arg) XRLD(arg)
#define Rst_BP 0x01
#define Rst_CNTR 0x02
#define Rst_FLAGS 0x04
#define Rst_E 0x06
#define Trf_PR_CNTR 0x08
#define Trf_CNTR_OL 0x10
#define Trf_PS0_PSC 0x18
void Init_7266(int Addr);
/* Initialize 7266 as follows (X + Y CNTR)
*/
void Init_7266(int Addr)
{
//Setup CMR Reg.
outp(XCMD(Addr),CMR(BINCnt + ModN + QDX4)); //Set Binary Mondulo N Quadrature x4
Modulo N count mode for N = 0x123456
Binary Counting
Index on LCNTR/LOL Input
CY and BW outputs
RCNTR/ABG controls Counters
A and B Enabled
/Setup IOR Reg.
outp(XCMD(Addr),IOR(DisAB + LOL + ABGate + CYBW)); //Disable Counters and Set CY BW Mode
//Setup RLD Reg.
outp(XCMD(Addr),RLD(Rst_BP + Rst_FLAGS));
outp(XDATA(Addr),0x06);
outp(YDATA(Addr),0x06);
outp(XCMD(Addr),RLD(Rst_E + Trf_PS0_PSC));
outp(XCMD(Addr),RLD(Rst_BP + Rst_CNTR));
//Setup IDR Reg.
outp(XCMD(Addr),IDR(EnIDX + NIDX + LIDX)); //Enable Negative Index on LCNTR/LOL Input
C Sample Routines for Interfacing with LS7266R1
//Load 6 to PR0 to setup Transfer to PS0
//Load 6 to PR0 to setup Transfer to PS0
//CMR Reg.
#define CMR(arg) (arg | 0xA0)
#define XCMR(arg) (arg | 0x20)
#define YCMR(arg) XCMR(arg)
#define BINCnt
#define BCDCnt 0x01
#define NrmCnt
#define RngLmt 0x02
#define NRcyc
#define ModN
#define NQDX
#define QDX1
#define QDX2
#define QDX4
//IOR Reg.
#define IOR(arg) (arg | 0xC0)
#define XIOR(arg) (arg | 0x40)
#define YIOR(arg) XIOR(arg)
#define DisAB
#define EnAB
//Reset BP and Reset Counter
//Reset E Flag and Transfer PR0 to PSC
//Reset Byte Pointer(BP) And Flags
0x00
0x01
0x06
0x00
0x08
0x10
0x18
0x00
0x04
0x00
#define LCNTR
#define LOL
#define RCNTR
#define ABGate
#define CYBW
#define CPBW
#define CB_UPDN
#define IDX_ERR
// IDR
#define IDR(arg) (arg | 0xE0)
#define XIDR(arg) (arg | 0x60)
#define YIDR(arg) XIDR(arg)
#define DisIDX 0x00
#define EnIDX
#define NIDX
#define PIDX
#define LIDX
#define RIDX
0x02
0x00
0x04
0x00
0x01
0x00
0x02
0x18
0x00
0x04
0x00
0x08
0x10

Related parts for ls7266r1