|
Re: 18f4620用PICDEM Z板與gps模組連接,電壓不同造成VCC及GND不穩,以及ZIGBEE實現的可行性問題?
|
||||
|---|---|---|---|---|
|
新會員
![]() |
版主您好:
""PICDEM Z 是否單獨供電,會不會是與 GPS 共用電造成負載過重所致。 "" 我的gps板子的電源目前先是使用110v轉5v的變壓器供電。 PICDEM Z板子是用上面的電池供電,9v轉成3.3v。 我將他們的接地端接在一起 。然後gps的tx接18f4620的rx,結果量PICDEM Z 的vcc 及gnd 就會跟著跳了。 -------------------------------------------------------------- 不好意思,因為硬體方面很弱,那那ttl跟cmos有辦法接嗎?還是說可以把ttl轉換成cmos的電位呢? (電腦的rs232接頭連接PICDEM Z 的rs232接頭,我的gps的tx腳直接接在18f4620拉出來的rx腳上)這樣子接會有問題嗎?造成硬體壞掉? 然而我的電腦的rs232端的tx腳不知道是不是因為測試沒考量到一些因素而壞,還是年紀到了而壞。 我在別人的電腦做測試時,將gps可能會丟入的字元,從電腦端送到pic做測試,p18f4620是可以接收並一直傳送顯示在電腦上面的。所以我覺得我程式上應該不會有問題。
發表於: 2009/2/26 15:46
|
|||
|
||||
|
Re: 18f4620用PICDEM Z板與gps模組連接,電壓不同造成VCC及GND不穩,以及ZIGBEE實現的可行性問題?
|
||||
|---|---|---|---|---|
|
新會員
![]() |
gps板的鮑率是4800,而未來如果要用zigbee的話,我看程試範例是19200,這樣子有可能用PICDEM Z板將gps的資料存入pic,並用zigbee傳送到另一個zigbee嗎
發表於: 2009/2/26 10:01
|
|||
|
||||
|
18f4620用PICDEM Z板與gps模組連接,電壓不同造成VCC及GND不穩,以及ZIGBEE實現的可行性問題?
|
||||
|---|---|---|---|---|
|
新會員
![]() |
各位先進大家好:
我使用18f4620,板子使用PICDEM Z與gps模組連接。 目前狀況是這個樣子,gps模組必需用5v的電才能動,然而他是TTL輸出。 而PICDEM Z板,會將供應電源降壓到3.多v。(因為zigbee的關係) 這時我將gps的接地與PICDEM Z共接地,然後我把gps的tx接腳,直接接到PICDEM Z的rx接腳上。 我發現我量PICDEM Z的VCC及GND會跟gps模組傳送資料的tx電壓伏動。這樣子會不會造成晶片工作的問題或是資料接收錯誤?有辦法可以改善嗎? 我有試過直接試過兩邊都就用5v,但是我希望未來可以利用PICDEM Z板上的zigbee將資料傳到另一端PICDEM Z板再從pc顯示,可是我看到zigbee的工作電壓是1.8~3.6v,我怕zigbee會壞掉。 所以希望有經驗的先進能否給我一些見意,關於電壓伏動的問題,與利用zigbee傳資料的可行性。
發表於: 2009/2/25 22:43
|
|||
|
||||
|
Re: 我用UART收GPS資料會停住,一個個敲字不會 ??
|
||||
|---|---|---|---|---|
|
新會員
![]() |
不好意思,我是單晶片新手,最近用18f4620單晶片,我也遇到如發問者的問題,但是不知道該怎麼解決,如救世主先進所說的用中斷處理,那麼在進入中斷後,該做些什麼事情呢?
萬一中斷太久,然而我的gps資料又傳送到pic接收端,這樣子會不會造成資料太多又卡住了呢?
發表於: 2009/2/25 17:12
|
|||
|
||||
|
Re: pic18f4620的ad轉換值有問題
|
||||
|---|---|---|---|---|
|
新會員
![]() |
大家好,我找到問題了,主要是因為
adtemp = ADRESL + (ADRESH << 8); 雖然compiler有過,但是我發現這樣子ADRESH的值會是0X00,沒有辦法向左移8位元,所以導致我的高位元都是0X00。 謝謝大家的幫忙。
發表於: 2008/11/28 15:10
|
|||
|
||||
|
Re: pic18f4620的ad轉換值有問題
|
||||
|---|---|---|---|---|
|
新會員
![]() |
參照:
------------------------------------------------------------- 版主您好,我看了第十九章了,但是我都有利用ad的函式庫來建立ADCON1的設定,如 OpenADC( ADC_FOSC_32 & ADC_RIGHT_JUST & ADC_12_TAD, ADC_REF_VDD_VSS & <----參考電壓為VDD與VSS ADC_INT_OFF , ADC_2ANA ); <--- 我使用AN0與AN1,所以設定這個做為AN0和AN1為類比輸入 不知道我是不是那裡有地方搞錯了~請糾正我,謝謝@@
發表於: 2008/11/27 20:47
|
|||
|
||||
|
Re: pic18f4620的ad轉換值有問題
|
||||
|---|---|---|---|---|
|
新會員
![]() |
參照:
------------------------------------------------------------- master您好,我有利用ad的函式庫 OpenADC( ADC_FOSC_32 & ADC_RIGHT_JUST & ADC_12_TAD, ADC_REF_VDD_VSS & ADC_INT_OFF, ADC_2ANA ); 其中 "ADC_2ANA " 這個設定是選用 → analog:AN0-AN1 digital:AN2-AN15 不知道是不是您說的I/O 設定給Analog 程式碼。 然後我有在void main() 裡面的開頭設定了 TRISAbits.TRISA0 = 1; TRISAbits.TRISA1 = 1; 但是我的結果還是一樣..不知道是不是那裡出了問題,我卡了好久。
發表於: 2008/11/27 14:22
|
|||
|
||||
|
pic18f4620的ad轉換值有問題
|
||||
|---|---|---|---|---|
|
新會員
![]() |
各位先進大家好,我剛接觸18f4620單晶片並搭配使用zigbee的實驗板。
振盪器我選用HS。目前我只想單純的做ad轉換,然後傳送到電腦端上,我是先利用電源供應器送入3v的電壓給AN0,我所得到的值是 41 BD 00 42。41 與42是我自已設定的開頭與結尾,所以我收到的值為 0X00BD 。 雖然我試著改變輸入的電壓,但是 ADRESH 都是00,我提高電壓或降低電壓都是00。 如果說依照我們的公式 ( AD轉換的值 /0X0400 ) * 3.2V = 計算電壓 =0.59V 這樣子計算出來的電壓跟我電源供應器所提供的3V差很多,是不是我那裡搞錯了,還是那裡忽略到了,可以指導我嗎,謝謝。下面是我的程式。 =================================== #include<p18f4620.h> #include<usart.h> #include<adc.h> unsigned int Read_AD (unsigned char ch) { unsigned int adtemp; PIR1bits.ADIF = 0; ADCON0 = (ch << 2)|1; ADCON0bits.GO = 1; while(ADCON0bits.GO); PIR1bits.ADIF = 0; adtemp = ADRESL + (ADRESH << 8); return adtemp; } void wait (unsigned int t) { unsigned int i,j; for (i = 0; i < 10; i++ ) for(j = 0; j < t; t++); } void main() { unsigned int advalue; OpenUSART( USART_TX_INT_OFF & USART_RX_INT_OFF & USART_ASYNCH_MODE & USART_EIGHT_BIT & USART_CONT_RX & USART_BRGH_HIGH,25); OpenADC( ADC_FOSC_32 & ADC_RIGHT_JUST & ADC_12_TAD, ADC_REF_VDD_VSS & ADC_INT_OFF, ADC_2ANA ); while(1) { WriteUSART(0x41); while(BusyUSART()); advalue = Read_AD(0); WriteUSART(advalue); while(BusyUSART()); WriteUSART(advalue >> 8); while(BusyUSART()); putcUSART( 0x42); while(BusyUSART()); wait(1); } }
發表於: 2008/11/26 20:57
|
|||
|
||||