glcd demo code convert 8051 to lpc23xx help please

Başlatan armsistem, 14 Nisan 2012, 10:24:19

armsistem

         Arkadaşlar winstar markasına ait bir glcd için üreticiye mail attım bana demo code gönderdiler ama program 8051 ile yapılmış bende keil lpc2365 çevirdim programı, ama şu an için deneme şansım yok ,üstadlar koda ve açılamalara bakarsanız doğru ve yanlışlarımı gösterebilirsiniz. Şimdiden teşekkürler.

- Programda bazı yerlerne _nop_(); kullanılıyor onun yerine __nop (); kullandım. Doğrumudur ?
- typedef bit                    BOOL;          keilde arm için 1 bitlik hangi değişkeni kullanabilirim.Ben int koydum.



8051---- include dosyaları
#include	<reg52.h>
#include 	<INTRINS.H>

LPC --- include dosyaları
#include <lpc23xx.h>
#include <stdio.h>

8051-------tanımlamalar
//=================================
//   parameter  define
//=================================
#define	chip1		0x01
#define	chip2		0x02
#define	all_chip	0x03

#define	page1		0xb8
#define	page2		0xb9
#define	page3		0xba
#define	page4		0xbb
#define	page5		0xbc
#define	page6		0xbd
#define	page7		0xbe
#define	page8		0xbf

//=================================
//  I/O define
//=================================
#define 	LCM_PORT P1         	//DB0~DB7,DATA BUS
sbit   	LCM_RS     = P3^0;     //  DATA / INSTRUCTION
sbit   	LCM_ENABLE = P3^4;     //  CHIP ENABLE
sbit   	LCM_Rst    = P3^2;     //  CHIP RESET
sbit   	LCM_CS1    = P3^3;     //  CHOICE CHIP1
sbit   	LCM_CS2    = P3^5;     //  CHOICE CHIP2
sbit   	LCM_RW     = P3^7;     //  CHIP READ/WRITE

//=================================
//  type define
//=================================
typedef bit                 	BOOL;       	/* Boolean */
typedef unsigned char       	UB8;        	/* 8-bit data */
typedef unsigned short int  	UW16;       	/*16-bit data */
typedef unsigned long       	UW32;       	/*32-bit data */
typedef signed char         	SB8;        	/* 8-bit data */
typedef signed short int    	SW16;       	/*16-bit data */
typedef signed long         	SW32;       	/*32-bit data */

LPC
#define LCM_CS2(x)		((x) ? (IOSET0 |= (1<<15 ))  : (IOCLR0 = (1<<15 )) );
#define LCM_CS1(x)		((x) ? (IOSET0 |= (1<<15 ))  : (IOCLR0 = (1<<15 )) );
#define LCM_RS(x)		((x) ? (IOSET0 |= (1<<15 ))  : (IOCLR0 = (1<<15 )) );
#define LCM_ENABLE(x)	((x) ? (IOSET0 |= (1<<15 ))  : (IOCLR0 = (1<<15 )) );
#define LCM_Rst(x)		((x) ? (IOSET0 |= (1<<15 ))  : (IOCLR0 = (1<<15 )) );
#define LCM_RW(x)		((x) ? (IOSET0 |= (1<<15 ))  : (IOCLR0 = (1<<15 )) );
#define LCM_PORT	              IOSET0
#define	page1		0xB8
#define	page2		0xB9
#define	page3		0xBa
#define	page4		0xBB
#define	page5		0xBC
#define	page6		0xBD
#define	page7		0xBE
#define	page8		0xBF
#define	chip1		0x01
#define	chip2		0x02
#define	all_chip	0x03
typedef int                 	BOOL;       	/* Boolean */
typedef unsigned char       	UB8;        	/* 8-bit data */
typedef unsigned short int  	UW16;       	/*16-bit data */
typedef unsigned long       	UW32;       	/*32-bit data */
typedef signed char         	SB8;        	/* 8-bit data */
typedef signed short int    	SW16;       	/*16-bit data */
typedef signed long         	SW32;       	/*32-bit data */