CH376磁盤初始化,返回值為0

如題,376連接SD卡,初始化函數(shù)CH376DiskMount( )老是返回0,正確的應該是0x14,不解,望指教

你前面測試命令有沒有正常通過?設置SD卡模式為3?有沒有檢測到SD卡連接?


我用的是模擬SPI的程序,SD卡沒有用檢測腳,但是確定連接好了,因為Query376Interrupt( )能得到返回值為1,CH376GetIntStatus()獲取中斷并取消中斷請求的時候,返回值為0


你最好先做一下測試命令,按照你的描述應該是檢測到了中斷,獲取到的中斷狀態(tài)不對。另外你可以用示波器看一下SD卡的信號腳。


測試命令是什么內(nèi)容啊,在例程里什么地方?我的中斷狀態(tài)現(xiàn)在返回0x82,0x82代表什么錯誤啊,我把sd卡拔掉也能返回0x82


測試命令是check_exist(0x06),測試單片機與CH376之間的通訊,應該在mInitCH376Host里面。 返回0x82代表SD卡沒有連接上,說明你SD卡那塊硬件連線有問題。


我的中斷好像有問題,因為不熟悉這款單片機(c8051f020),我用P6口(P6.4-SCS,P6.5-SCK,P6.6-SDI,P6.0-SDO)模擬SPI接口,P6.0好像檢測不到中斷,我測試過P6.0,做數(shù)字輸入時,可以檢測到高、低電平。 P6口不能位尋址,所以我用了代替: //CH376_SPI_SCS = 1; P6 |= 0X10;

//CH376_SPI_SCS = 0; P6 &= 0XEF;

CH376_SPI_SCK = 0; P6 &= 0XDF;

//CH376_SPI_SCK = 1; P6 |= 0X20;

//if ( CH376_SPI_SDO ) if ( P6 & 0X01 ) d ++;

UINT8 Query376Interrupt( void ) { return( (P6&0x01)? FALSE : TRUE ); /* 如果未連接CH376的中斷引腳則查詢兼做中斷輸出的SDO引腳狀態(tài) */ }

我覺得沒問題啊,但是好像中斷等不到,問題出在哪兒,幫忙指點一下,不勝感激


確定CH376沒有給中斷信號,我手動給SDO一個低電平,可以檢測到,說明不是單片機I/O口配置的問題,一直等不到中斷,有哪些情況下CH376不會給中斷信號,幫忙指點一下,不勝感激


那你測試命令應該也過不了吧。 確認一下硬件有沒有問題?晶振有沒有起振?復位輸出25腳電平是否為低?


我的CH376初始化函數(shù)CH376DiskMount( )返回值正確為0x14,指示燈點亮,但是初始化磁盤老是等不到中斷,UINT8 Query376Interrupt( void ) { if(P6&0x01) return FALSE; else return TRUE;

}在查詢中斷的時候,手動給一個低電平,能檢測到,晶振起振12M,復位輸出25腳都是低,376就是不給中斷信號,還有什么情況會影響376的中斷信號呢,請指教


問題解決了,沒有宏定義sdo,所以376初始化的時候,沒有設置SPI的SDO引腳的中斷方式,低級錯誤,真費時間


只有登錄才能回復,可以選擇微信賬號登錄

国产91精品新入口,国产成人综合网在线播放,九热这里只有精品,本道在线观看,美女视频a美女视频,韩国美女激情视频,日本美女pvp视频