還有375的三線串口與單片機相連,ACT#與INT#到底連哪條線到單片機的中斷,看論壇討論的與說明書上的不同,糊涂了! 如果375USB口自動檢測到有USB設(shè)備連接了,是用哪條線通知道單片機中斷? 還有系統(tǒng)上電后什么時候把375配置成串口, 默認的串口波特率是多少,論壇有人說是9600bps,但我在“U盤文件讀寫模塊的串口連接說明”這個PDF文件里看到是4800bps,還說與晶體X2的頻率有關(guān),這是怎么回事啊,哪個是正確的呢
ACT#:在設(shè)備方式下是USB設(shè)備配置完成狀態(tài)輸出,在主機方式下是USB設(shè)備連接狀態(tài)輸出,低電平有效; INT#:中斷請求輸出引腳,低電平有效. 也就是INT#接單片機的中斷腳,ACT#可用來接LED顯示配置是否完成或是設(shè)備是否連接。 若想讓375工作在并口方式的話得把TXD 引腳通過1KΩ左右的下拉電阻接地或者直接接地,而工作在串口方式的話則TXD與單片機的串口線相連。不過單片機的串口的工作在9位數(shù)據(jù)下,第9位用來選擇該數(shù)據(jù)是命令還是數(shù)據(jù)。 375默認的波特率是9600bps,U盤文件讀寫模塊的默認波特率才是4800bps。
luoye268268,謝謝你了 這么說,如果TXD引腳不接地,375就默認是串口,不需要在程序里配置,是這樣嗎? 還有我想問問375的連接電容、電阻是不是一定要嚴格按說明上的大小?
unsigned char set_usb_mode( unsigned char mode ) /* 設(shè)置CH37X的工作模式 */ { unsigned char i; CH375_WR_CMD_PORT( CMD_SET_USB_MODE ); CH375_WR_DAT_PORT( mode ); endp6_mode=endp7_mode=0x80; /* 主機端復位USB數(shù)據(jù)同步標志 */ for( i=0; i!=100; i++ ) { /* 等待設(shè)置模式操作完成,不超過30uS */ if ( CH375_RD_DAT_PORT()==CMD_RET_SUCCESS ) return( TRUE ); /* 成功 */ } return( FALSE ); /* CH375出錯,例如芯片型號錯或者處于串口方式或者不支持 */ } 這段程序我是在貴公司一個C文件看到的,文件名是:ch375_host_int_ser.C。 我不懂的是“數(shù)據(jù)同步標志”這個地方,數(shù)據(jù)同步標志作什么用的? 還有最后一句注釋我也不明白,為什么處于串口方式375會出錯,是不是注釋寫錯了,應(yīng)該是處于并口方式會出錯吧
void set_freq(unsigned char freq) { CH375_WR_CMD_PORT( CMD_SET_SYS_FREQ ); /* 設(shè)置系統(tǒng)工作頻率 */ CH375_WR_DAT_PORT( freq ); delayms(10); } 還有這段程序,這個系統(tǒng)工作頻率我在375的datasheet中沒找到,不知道是做什么的