激情综合丁香-激情综合六月-激情综合婷婷亚洲图片-激情综合图区-激情综合网五月


主題:EM9287利用SPI總線配置SSD1322的OLED屏

  共有45297人關注過本帖    
帥哥喲,離線,有人找我嗎?
MS
1樓 信息 | 搜索 | 郵箱


加好友 發短信
EM9287利用SPI總線配置SSD1322的OLED屏  發帖心情 Post By:2015-8-7 14:51:00   [只看該作者]

當利用EM9287的SPI總線配置SSD1322時,wince調用上層API讀寫SSD1322時,循環1萬多次讀寫發現數據傳輸速度過慢,從而導致OLED屏刷屏過慢(SPI總線需要對SSD1322進行1萬多次讀寫RAM才能刷屏)。

 

 

請問:是不是因為當上層應用程序調用WINCE里的SPI驅動的讀寫函數速度過慢導致的,SPI總線雖然可達10MHz頻率,但事實上調用API函數之后的讀寫速度大大降低,遠遠沒有10MHz的速率。

請問:是否可以改進SPI的讀寫驅動,提高讀寫速率?


  單帖管理 | 引用 | 回復 回到頂部
客人
2樓


  發帖心情 Post By:2015-8-7 17:06:00   [只看該作者]

EM9287的SPI最高可以20Mbps的波特率進行數據傳輸,且可以實驗多字節數據DMA傳輸,所以按理不應該慢。請試試DMA方式通訊

可以參考這個鏈接  http://www.huochepiao123.com.cn/case/case2014673.html

注:該方法是WinCE6.0系統上有效,不適用與linux系統,請確認你的系統是否是CE,如果是,則可以參考

  單帖管理 | 引用 | 回復 回到頂部
x10
3樓


  發帖心情 Post By:2015-8-8 8:26:00   [只看該作者]

應當用DeviceIoControl的多數據結塊的tranfer方式,效率就很高。在Linux版本肯定是支持這個模式的,CE6我要查一下,如果沒有支持,我們會盡快加上。請留一個能的郵箱,以便我們發新內核給你,謝謝!

  單帖管理 | 引用 | 回復 回到頂部
帥哥喲,離線,有人找我嗎?
MS
4樓 信息 | 搜索 | 郵箱


加好友 發短信
  發帖心情 Post By:2015-8-10 9:48:00   [只看該作者]

您好,請問DeviceIoControl多數據結塊的Transfer方式怎么用?還有您查了wince6.0支持該傳輸方式嗎?

 

 

 

我的郵箱:njutjl@126.com    謝謝!


  單帖管理 | 引用 | 回復 回到頂部
zxw
5樓


  發帖心情 Post By:2015-8-10 11:27:00   [只看該作者]

你好!
CE6系統支持這種讀寫方式,給你的網頁連接中也說過該方式的使用方法。
在光盤中的EM9280_SPIDemo例子程序中也有代碼可以參考
你的郵件中,我把SPI應用方法的文章也再次發給你了,可以先看看。具體那里不清楚,可以提的更明確一些更好!

混合型SPI操作需要用到以下數據結構: 
  typedef struct _SPITransfer 
  { 
    LPVOID pTxBuff; // SPI發送buffer指針 
    LPVOID pRxBuff; // SPI接收buffer指針 
    DWORD dwBufLength; // 本次SPI傳輸的字節數 
  } SPITransfer;

 

  pTxBuff:SPI輸出數據BUFF指針 
  pRxBuff:SPI讀入數據BUFF指針 
  dwBufLength:SPI數據傳輸長度,以字節為單位

 

  注意,EM9280的SPI接口僅支持半雙工操作,因此在上述結構中,只能有一個buffer指針為有效指針,另一個必須為NULL。dwBufLength的定義與單向讀寫的定義一致。具體的傳輸是通過DeviceIoControl來實現的,舉例說明,本例首先進行發送1個字節(8-bit SPI),然后接收2個字節。

 

  SPITransfer Trans[2]; 
  BYTE Tx[16], Rx[16]; // buffer足夠大 

  Tx[0] = 0xE5; // 發送的字節 
  Trans[0].pTxBuf = Tx; 
  Trans[0].pRxBuf = NULL; 
  Trans[0].dwBufLength = 1; // 要發送1字節 
  Trans[1].pTxBuf = NULL; 
  Trans[1].pRxBuf = Rx; 
  Trans[1].dwBufLength = 2; // 要接收2字節 

  DeviceIoControl(hSPI, 
    SPI_IOCTL_EXCHANGE, 
    Trans, // in buffer 
    sizeof(Trans) , // in buffer size 
    NULL, 
    0, 
    NULL, 
    NULL))

 

  在上述調用中需要注意的是,DeviceIoControl()輸入參數中的buffer長度必須是數據結構SPITransfer大小的整倍數,否則將被視作無效參數。


  單帖管理 | 引用 | 回復 回到頂部

返回首頁

EM9287利用SPI總線配置SSD1322的OLED屏

用戶名:
            驗證碼: 驗證碼,看不清楚?請點擊刷新驗證碼
內容:
主站蜘蛛池模板: www.麻豆.com| 黄色大片国产| 欧美成人一区二区| 一区二区三区免费在线| 女人被狂躁免费视频| 免费一区视频| 国产区成人综合色在线| 黄色成人在线观看| 国产亚洲精品久久久久91网站| 午夜影院啪啪| 91av视频在线观看| 日本免费黄色网| 成人久久久精品乱码一区二区三区| 国产小视频在线观看免费| 黄色 在线播放| 超级乱淫片67194免费看| 久久精品国产精品国产精品污| 亚洲精品国产摄像头| a一级爱做片免费| 国产成人aa在线观看视频| 久久久久亚洲精品美女| 一区二区精品在线观看| 日本免费毛片在线高清看| 免费一级a毛片在线搐放正片| 性视频免费视频大全| 国产精品麻豆综合在线| 色男人网| 91综合久久| 日韩在线毛片| 色婷婷综合激情视频免费看| 国产菲菲视频在线观看| 91国偷自产一区二区三区蜜臀| 免费看国产片| 亚洲女视频| 一级特黄aaa大片| 中国女人特级毛片| 极品国产高颜值露脸在线| 国产成人亚洲欧美三区综合| 韩国毛片免费看| 国产精品亚洲色图| 欧美狠狠入鲁的视频极速|