/*
* ------------------------------------------------------------------------------------------------
* o o o o Fachhochschule fuer Technik und Informatik TI
* :....o Fachbereich Elektro- und Kommunikationstechnik
* ------------------------------------------------------------------------------------------------
*
* Projekt ..........: Ausbildungskit Mikrocontroller mit dem LPC1768
* Dateiname ........: kit1768.h
* Pfad .............: ${file_path}
* Autor ............: Martin Aebersold (AOM1)
* KIT ..............: BFH LPC1768-Kit
* Plattform ........: CoIDE Version 1.2.1
* Toolchain ........: gcc version 4.5.1 (Sourcery G++ Lite 2010.09-51)
* Company...........: Berne University of Applied Sciences TI
* Internet..........: www.hti.bfh.ch
*
* ------------------------------------------------------------------------------------------------
*
* Modulbeschreibung : Header Datei für das BFH LPC1768 Ausbildungskit.
*
* ------------------------------------------------------------------------------------------------
* Aenderungen und Korrekturen:
* Version | Datum | Kuerzel | Beschreibung
* --------|------------|---------|------------------------------------------------------------
* 1.0 | 21.01.2011 | AOM1 | Erstellung der Datei
* ------------------------------------------------------------------------------------------------
*/
/*
*-------------------------------------------------------------------------------------------------
* Header-Dateien
*-------------------------------------------------------------------------------------------------
*/
#ifndef _KIT1768_H_
#define _KIT1768_H_
#include
#include "lpc17xx_clkpwr.h"
#include "lpc17xx_gpio.h"
/*
* ------------------------------------------------------------------------------------------------
* Datentypen
* ------------------------------------------------------------------------------------------------
*/
typedef signed char INT8;
typedef unsigned char UINT8;
typedef signed short INT16;
typedef unsigned short UINT16;
typedef signed long INT32;
typedef unsigned long UINT32;
typedef signed long long INT64;
typedef unsigned long long UINT64;
typedef float FLOAT32;
typedef double FLOAT64;
typedef enum {FALSCH = 0, WAHR = !FALSCH} BOOLEAN;
/*
* ------------------------------------------------------------------------------------------------
* Makros
* ------------------------------------------------------------------------------------------------
*/
/*
* ------------------------------------------------------------------------------------------------
* Definitionen
* ------------------------------------------------------------------------------------------------
*/
#define SystemCoreClock 72000000L
#define OUTPUT 1
#define INPUT 0
/* Data Bit-Positionen */
#define BIT_0 0
#define BIT_1 1
#define BIT_2 2
#define BIT_3 3
#define BIT_4 4
#define BIT_5 5
#define BIT_6 6
#define BIT_7 7
/* Bit-Positionen der Tasten */
#define TASTE_0 (1<<26)
#define TASTE_1 (1<<2)
#define TASTE_2 (1<<3)
#define TASTE_3 (1<<4)
#define TASTE_4 (1<<29)
#define TASTE_5 (1<<0)
#define TASTE_6 (1<<1)
#define TASTE_7 (1<<12)
#define TASTEN_P2 TASTE_1 | TASTE_2 | TASTE_3 | TASTE_5 | TASTE_6 | TASTE_7
/* Bit-Positionen der Schalter */
#define SCHALTER_0 (1<<4)
#define SCHALTER_1 (1<<5)
#define SCHALTER_2 (1<<15)
#define SCHALTER_3 (1<<25)
#define SCHALTER_4 (1<<25)
#define SCHALTER_5 (1<<26)
#define SCHALTER_6 (1<<28)
#define SCHALTER_7 (1<<10)
#define SCHALTER_P0 SCHALTER_0 | SCHALTER_1 | SCHALTER_2 | SCHALTER_3 | SCHALTER_7
#define SCHALTER_P1 SCHALTER_4 | SCHALTER_5 | SCHALTER_6
/* Bit-Positionen der LEDs */
#define LED_0 (1<<16)
#define LED_1 (1<<17)
#define LED_2 (1<<18)
#define LED_3 (1<<19)
#define LED_4 (1<<20)
#define LED_5 (1<<21)
#define LED_6 (1<<22)
#define LED_7 (1<<23)
#define LED_ALL LED_7 | LED_6 | LED_5 | LED_4 | LED_3 | LED_2 | LED_1 | LED_0
/* Bit-Position LED Freigabe */
#define LED_ENABLE (1<<11)
/* Bit-Positionen der 7-Segment Freigaben */
#define SEG0_ENABLE (1<<5)
#define SEG1_ENABLE (1<<6)
#define SEG2_ENABLE (1<<11)
#define SEG3_ENABLE (1<<27)
#define SEG_ENABLE_ALL SEG3_ENABLE | SEG2_ENABLE | SEG1_ENABLE | SEG0_ENABLE
#define SEG_EN_PORT0 0
#define SEG_EN_PORT2 2
#define LED_PORT 0
#define TASTEN_PORT0 0
#define TASTEN_PORT1 1
#define TASTEN_PORT2 2
#define SCHALTER_PORT0 0
#define SCHALTER_PORT1 1
#define SCHALTER_PORT2 2
/*
* ------------------------------------------------------------------------------------------------
* Funktions-Prototypen
* ------------------------------------------------------------------------------------------------
*/
void KIT1768_Init(void);
void KIT1768_10msDelay(UINT32 delayValue);
void KIT1768_Led_Ein(UINT8 LedNummer);
void KIT1768_Alle_Led_Ein(UINT8 ledValue);
void KIT1768_Led_Aus(UINT8 LedNummer);
void KIT1768_Alle_Led_Aus(UINT8 ledValue);
void KIT1768_Segment_Ein(UINT8 segValue, UINT8 nummer);
BOOLEAN KIT1768_Lese_Taste(UINT8 TastenNummer);
UINT8 KIT1768_Lese_Alle_Tasten(void);
BOOLEAN KIT1768_Lese_Schalter(UINT8 SchalterNummer);
UINT8 KIT1768_Lese_Alle_Schalter(void);
#endif
|