Main Page | Modules | Directories | File List | Globals | Related Pages

db_shift.h

00001 #ifndef _DEV_BOARD_SHIFT_H
00002 #define _DEV_BOARD_SHIFT_H
00003 
00004 /*
00005  * This code has been taken from the Charon Development Board
00006  * Toolkit and slightly modified.
00007  * Harald Kipp
00008  */
00009 
00010 #include <sys/types.h>
00011 
00012 #define SHIFT_IO_DELAY        1
00013 
00014 #define SHIFT_PORT            PORTD
00015 #define SHIFT_PIN             PIND
00016 #define SHIFT_DDR             DDRD
00017 
00018 #if 0
00019 /* 74165 */
00020 #define SHIFT_IN_LOAD         PORTD3      /* shift/!load */
00021 #define SHIFT_IN              PORTD4      /* data */
00022 #define SHIFT_CLK             PORTD7      /* serial clock */
00023 
00024 /* 74595 */
00025 #define SHIFT_LCD_SET         PORTD1      // parallel write clock (storage register clock)
00026 #define SHIFT_LED_SET         PORTD2      // parallel write clock (storage register clock)
00027 #define SHIFT_OUT             PORTD6      // data
00028 
00029 #define SHIFT_IN_LOAD_DDR     DDD3        /* pin direction bit */
00030 #define SHIFT_IN_DDR          DDD4        /* pin direction bit */
00031 #define SHIFT_CLK_DDR         DDD7        /* pin direction bit */
00032 
00033 #define SHIFT_LCD_SET_DDR     DDD1        // pin direction bit
00034 #define SHIFT_LED_SET_DDR     DDD2        // pin direction bit
00035 #define SHIFT_OUT_DDR         DDD6        // pin direction bit
00036 #endif
00037 
00038 /* 74165 */
00039 #define SHIFT_IN_LOAD         PORTD2      /* shift/!load */
00040 #define SHIFT_IN              PORTD4      /* data */
00041 #define SHIFT_CLK             PORTD7      /* serial clock */
00042 
00043 /* 74595 */
00044 #define SHIFT_LCD_SET         PORTD1      // parallel write clock (storage register clock)
00045 #define SHIFT_LED_SET         PORTD5      // parallel write clock (storage register clock)
00046 #define SHIFT_OUT             PORTD6      // data
00047 
00048 #define SHIFT_IN_LOAD_DDR     DDD2        /* pin direction bit */
00049 #define SHIFT_IN_DDR          DDD4        /* pin direction bit */
00050 #define SHIFT_CLK_DDR         DDD7        /* pin direction bit */
00051 
00052 #define SHIFT_LCD_SET_DDR     DDD1        // pin direction bit
00053 #define SHIFT_LED_SET_DDR     DDD5        // pin direction bit
00054 #define SHIFT_OUT_DDR         DDD6        // pin direction bit
00055 
00056 // --- Prototypes --- //
00057 
00058 void DevBoardShiftLedOut( u_char val );
00059 void DevBoardShiftLcdOut( u_char val );
00060 void DevBoardShiftWordOut( u_int val );
00061 u_char DevBoardShiftByteIn( void );
00062 void DevBoardShiftDelay(long nops);
00063 
00064 #endif
00065 

© 2002-2004 by egnite Software GmbH - visit http://www.ethernut.de/