|
技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測(cè)控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng) 驅(qū)動(dòng)編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計(jì) | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe |
LPC2214控制CS8900A兩個(gè)怪問(wèn)題請(qǐng)教 |
作者:lovelysky 欄目:ARM技術(shù) |
請(qǐng)問(wèn)哪位大俠調(diào)通過(guò)用LPC2000系列控制8900A.html">CS8900A的驅(qū)動(dòng)? 我用lpc2214控制8900A.html">CS8900A的時(shí)候遇到了問(wèn)題,知道的幫個(gè)忙吧。 硬件連接和軟件設(shè)置如下: 使用IO模式,故 SA1~SA3 連 A1~A3 SD0~SD15 連 D0~D15 /IOW 連 /WE /IOR 連 /OE /SBHE和AEN 連 /CS1 2214晶振11.0592M,4倍頻后44.2368M BCFG1設(shè)置: IDCY 3 WST1 5 WST2 5 MW 16bit 問(wèn)題1:無(wú)法按標(biāo)準(zhǔn)驅(qū)動(dòng)讀取或?qū)懭爰拇嫫?br> 第一步讀8900ID號(hào)就沒(méi)有成功 if ( csReadPacketPage(PKTPG_EISA_NUM) != EISA_NUM_CRYSTAL ) return FAILURE; 其中EISA_NUM_CRYSTAL為8900ID號(hào)0x630E. csReadPacketPage函數(shù)如下: uint16 csReadPacketPage( uint16 Offset ) { PORT_PKTPG_PTR = Offset; return PORT_PKTPG_DATA; } 后來(lái)反復(fù)測(cè)試,發(fā)現(xiàn)用下面的函數(shù)是可以的,就是無(wú)故多寫一次寄存器,浪費(fèi)了時(shí)間: uint16 csReadPacketPage( uint16 Offset ) { PORT_PKTPG_PTR = 0; //lpc2214寫時(shí)序與8900兼容性不好,暫時(shí)用寫兩次替代 PORT_PKTPG_PTR = Offset; return PORT_PKTPG_DATA; } 同樣,csWritepacketPage函數(shù)也存在相同現(xiàn)象.更改BCFG1的設(shè)置都沒(méi)有用. 目前程序就按照后面那種方法再跑,雖然浪費(fèi)時(shí)間,而且原理不清,但至少能正常工作,問(wèn)題2就麻煩了. 問(wèn)題2:寫發(fā)送寄存器無(wú)效. 按PDF的說(shuō)法,應(yīng)該是 1、發(fā)送傳輸命令包到TxCMD寄存器 csWritePacketPage( PKTPG_TX_CMD, TX_CMD_START_ALL ); 或 PORT_PKTPG_PTR = 0; //問(wèn)題1中附加的語(yǔ)句 PORT_TX_CMD = TX_CMD_START_ALL ; 2、發(fā)送長(zhǎng)度到TxLength寄存器 csWritePacketPage( PKTPG_TX_LENGTH, 60);//注:長(zhǎng)度60作測(cè)試用 或 PORT_PKTPG_PTR = 0; PORT_TX_LENGTH = 60; 3、讀Rdy4TxNOW bit(寄存器BusST,bit 8),為1可發(fā)送 其中csWritePacketPage函數(shù)在初始化程序中頻繁調(diào)用,驗(yàn)證過(guò)該函數(shù) 是正確的 現(xiàn)在的情況是第3步后Rdy4TxNOW bit(bit8)始終是0,無(wú)法進(jìn)行數(shù)據(jù)發(fā)送 我在2和3之間加入csReadPacketPage( 0x0108 ); 讀出Tx狀態(tài)寄存器 發(fā)現(xiàn)是0x0009(bit8位為0)似乎是傳輸命令沒(méi)有寫到TxCMD寄存器中去 可csWritePacketPage函數(shù)應(yīng)該是正確的阿。 弄了兩天也沒(méi)弄出來(lái),有這方面經(jīng)驗(yàn)的大俠幫個(gè)忙吧. |
2樓: | >>參與討論 |
作者: nl1031 于 2005/5/14 20:31:00 發(fā)布:
總線方式下,LPC2000與cs8900的時(shí)序配合好像有些問(wèn)題。 你可以將讀寫信號(hào)都通過(guò)兩個(gè)反門,進(jìn)行一下延時(shí),看看是否可行。 |
|
|
免費(fèi)注冊(cè)為維庫(kù)電子開(kāi)發(fā)網(wǎng)會(huì)員,參與電子工程師社區(qū)討論,點(diǎn)此進(jìn)入 |
Copyright © 1998-2006 udpf.com.cn 浙ICP證030469號(hào) |