msp430+dualportRam使用

2019-03-24 16:37发布

想請教一下

目前我是使用msp430F449cy7c138作單方面的傳輸

但是目前從dualportRAM李讀出的資料並不是我寫入的資料

想請問一下問題出在哪?

謝謝
CY7C138 datasheet

程式源碼

想请教一下
目前我是使用msp430F449cy7c138作单方面的传输

但是目前从dualportRAM李读出的资料并不是我写入的资料

想请问一下问题出在哪
?

谢谢


CY7C138 datasheet
http://cn.ic-on-line.cn/IOL_CY7C138/PdfView/197663.htm

程式源码
#include <msp430x44x.h>
#include "XT2_Set.h"
#include<stdlib.h>
/*-------------DUAL PORT RAM控制參數設定--------------------------------------*/

#define DIR_HIGH()
P1OUT |= BIT4
//
電壓轉換控制.3->5

#define DIR_LOW()
P1OUT &=~(BIT4)
//
電壓轉換控制->3.3


#define RW_HIGH()
P1OUT |= BIT3

#define RW_LOW()
P1OUT &=~(BIT3)


#define CE_HIGH()
P1OUT |= BIT2

#define CE_LOW()
P1OUT &=~(BIT2)


#define OE_HIGH()
P1OUT |= BIT1

#define OE_LOW()
P1OUT &=~(BIT1)


#define EG_HIGH()
P1OUT |= BIT0

#define EG_LOW()
P1OUT &=~(BIT0)
//
栓鎖器所住位置

#define NOP(){_NOP();_NOP();_NOP();_NOP();_NOP();}

unsigned int DATA=0,tu[10];
unsigned int sum=0,i;
void DPW(unsigned int,unsigned int);
void Init_DUALPORTRAM(void);
unsigned int DPR(unsigned int);

/*-------------DUAL PORT RAM控制參數設定END-----------------------------------*/

void main(void)
{

for(i=0;i<10;i++)
//
對個位置發送資料

{


sum=240;


DPW(i,sum);


}

for(i=0;i<10;i++)
//
對地址-9讀取資料

tu=DPR(i);





}

void Init_DUALPORTRAM(void)
{

P1SEL=0;


P6SEL=0;




P1DIR=0xdf;
//
設為bit5為輸入(BUSY),其餘為輸出

P6DIR=0xff;
//
設為輸出



OE_HIGH();


RW_HIGH();


EG_LOW();


CE_HIGH();



return;

}


void DPW(unsigned int address,unsigned int data)
{

Init_DUALPORTRAM();




DIR_LOW();//B
A(電位轉換)

//_NOP();


P6OUT=address;// ADDRESS


EG_HIGH();


EG_LOW();//
ADDRESS拴住

CE_LOW();



NOP();


RW_LOW();


P6OUT=data;//
送出資料

NOP();


RW_HIGH();


CE_HIGH();



}

unsigned int DPR(unsigned int address)
{

Init_DUALPORTRAM();


CE_LOW();


DIR_LOW();//B
A(電位轉換)(先傳ADDRESS)


//_NOP();


P6OUT=address;// ADDRESS


EG_HIGH();


//NOP();


//NOP();


EG_LOW(); //
ADDRESS拴住

DIR_HIGH();//A
B(電位轉換)


P6DIR=0x00;//
設為輸入


OE_LOW();


NOP();


DATA=P6IN;


// NOP();



CE_HIGH();


OE_HIGH();




return DATA;

}


硬体方面有使用3.3V与5V之间的转换IC (DIR)

与栓所器所住位置(EG)


[ 本帖最后由 riddle 于 2009-8-14 11:58 编辑 ] 此帖出自小平头技术问答
0条回答

一周热门 更多>

相关问题

    相关文章