|
Re: 各位前輩幫幫忙提供一下意見???
|
||||
|---|---|---|---|---|
|
中級會員
![]() |
你的程式if else是正常的啊?應該是你產生Hi-Low條件的
問題吧?依你現在程式條件看來,確實是0V才會Hi,不知 你要電壓多少為Hi,多少為Low? 假設AD使用8bit,AD範圍是0-255;AD使用10bit,則AD 範圍是0-1023,所以你可能要換算多少電壓要Hi或Low。 以8bitAD,0-5V來換算AD值,每1v至少也間隔51 AD值 255/5=51,所以你條件只設2,一定是0V才會Hi,這樣了嗎?
發表於: 2007/6/28 8:45
|
|||
|
||||
|
Re: 各位前輩幫幫忙提供一下意見???
|
||||
|---|---|---|---|---|
|
中級會員
![]() |
從你的程式看來,e=b=A4=temp=AD值, 所以
calculate()中,只有0V時轉換後的AD值會小於2, 其餘都大於2,了嗎?
發表於: 2007/6/27 15:39
|
|||
|
||||
|
Re: ADC轉換的奇怪問題?…
|
||||
|---|---|---|---|---|
|
中級會員
![]() |
已經找到問題了,謝謝大家。
發表於: 2007/6/26 13:05
|
|||
|
||||
|
Re: ADC轉換的奇怪問題?…
|
||||
|---|---|---|---|---|
|
中級會員
![]() |
抱歉是我post上網路時key錯了,原程式已經是CHS0=1了,馬上更正,謝謝…
發表於: 2007/6/25 17:06
|
|||
|
||||
|
ADC轉換的奇怪問題?…
|
||||
|---|---|---|---|---|
|
中級會員
![]() |
各位請教一個問題:
程式中, 兩個ADC如果我只單獨使用其中一個,另一個mark, 則ADC轉換正常。但如果我兩個都使用,則A可以正常轉換, 而B則無動作,如果將A、B順序對調,則A還是可以正常轉換 ,而B則無動作,不知原因為何?… 使用IC:16F684,內建 8MHz振盪器 程式片段如下: main() { InitADC(); while(1) { //-----A----- CHS0 = 0; //AN0 is A/D input Delay1us(32); //Delay 32us ConvertADC(); while(BusyADC()); Vset_AD = ReadADC(); //------------ //-----B----- CHS0 = 1; //AN1 is A/D input Delay1us(32); //Delay 32us ConvertADC(); while(BusyADC()); Vbat_AD = ReadADC(); //------------ . . . } }
發表於: 2007/6/25 16:36
|
|||
|
||||
|
Timer的值怎麼讀取判斷?
|
||||
|---|---|---|---|---|
|
中級會員
![]() |
各位大大:
小弟使用 if(TMR1H == xx && TMR1L == xx) { ..... ..... } 但根本不會進入,有其他方法可用嗎?
發表於: 2007/5/31 17:53
|
|||
|
||||
|
Timer的中斷旗標
|
||||
|---|---|---|---|---|
|
中級會員
![]() |
各位大大:
請教一個問題,使用Timer時,如果不使用中斷功能(也就是不將TMRxIE設為1),只想使用中斷旗標(TMRxIF)來判斷是否溢位,不知是否可行呢?還是一定要將TMRxIE設為1,中斷旗標(TMRxIF)才會動作,以上煩請回答,謝謝…
發表於: 2007/5/31 8:45
|
|||
|
||||
|
Re: memory配置出了問題嗎?(Hi-Tech picc)
|
||||
|---|---|---|---|---|
|
中級會員
![]() |
感謝各位提供的意見,謝謝…
發表於: 2007/5/25 15:29
|
|||
|
||||
|
Re: 查表程式怎麼撰寫?…
|
||||
|---|---|---|---|---|
|
中級會員
![]() |
撰寫中,感謝大家的指導…
發表於: 2007/5/24 12:35
|
|||
|
||||