Re: 請問類比數位電壓值?
|
||||
---|---|---|---|---|
初級會員
|
搞了半天才知道原來在LCD程式裡設定到共通腳(RB7),難怪一直沒訊號。
叨擾甚久,抱歉= ='' 訊號已正常
發表於: 2009/5/5 8:15
|
|||
|
Re: 請問類比數位電壓值?
|
||||
---|---|---|---|---|
高級會員
|
0~1.27V 我是用示波器量測,
--------------> 是量那裡 ?? ADCValue 的宣告我是參考課本範列 --------------> 在PORTB=ADCValue; 這一行設中斷點 , 看一下ADCValue 與 PORTB 的值正不正確 ??? 另外, 即然有lcd顯示 , 可以說說你lcd上顯示的情形嗎 ?? 這樣可以幫助判斷 , 不然 "蝦子摸象" 不知要摸到何年何月!!
發表於: 2009/5/4 23:05
|
|||
|
Re: 請問類比數位電壓值?
|
||||
---|---|---|---|---|
版主
|
說明一下,是程式的那一段不懂,因為你沒有指出來不知要如何回答?
發表於: 2009/5/4 18:57
|
|||
|
Re: 請問類比數位電壓值?
|
||||
---|---|---|---|---|
初級會員
|
void Init_ADC(void)
{ ADCON1bits.ADON = 0; ADPCFG = 0xFEFF; ADCON1 = 0x8044; ADCON2 = 0x0020; // ADCON2 = 0000 0000 0000 0000 ADCSSL = 0x0000; // no scan input selected ....... ADCON3 = 0x1f3f; ADCHS = 0x0008 ; // ADCHS = 0b 00000000 00000111 ConfigIntADC10(ADC_INT_DISABLE); // Disable ADC interrupt } void Show_ADC(void) { unsigned char dummy ; unsigned int ADCValue; ADCON1bits.SAMP = 1; // start sampling ... for ( dummy = 0 ; dummy < 200 ; dummy ++ ); ConvertADC10(); while (BusyADC10()); // conversion done? ADCValue = (ADCBUF0 >> 2); // get ADC value PORTB=ADCValue; setcurLCD(12,1) ; // Set LCD cursor put_Num_LCD( ADCValue ) ; // 將類比轉換結果以十進位數字顯示至液晶顯示器 } ----------------------------------------- 0~1.27V 我是用示波器量測, ADCValue 的宣告我是參考課本範列 程式上,我不是很懂問題再哪的說= =?
發表於: 2009/5/4 14:29
|
|||
|
Re: 請問類比數位電壓值?
|
||||
---|---|---|---|---|
高級會員
|
參照:
我猜你的0~1.27v , 0, 0 ~ 1.27v是量d/a的結果, 但凡事總會有因果 , 當然要先找到原因 , 解決了才會有正常的結果. ==> 如果d/a的結果是0~1.27v , 0, 0 ~ 1.27v , 有點像有號數 , 檢查 ADCValue 的宣告是不是正確 參照:
不知你是用示波器量的? 還是用電表? 還有就是 你的 PORTB=ADCValue 多久執行一次? ==> 因為如果目前的輸出是有問題的, 可能是數值一直改變 , 用電表量的話是看不太出來的. ==>PORTB=ADCValue 執行太快 , 快過一次 A/D 轉換的時間,那你能保證 ADCValue的值是多少嗎 ?說不定是亂碼 , 才迼成D/A輸出亂跳 ==>另外, 有時A/D的尾數(LSB)會亂跳是正常的, 跳幅多大要看你的輸入電路的穩定度!
發表於: 2009/5/4 11:24
|
|||
|
Re: 請問類比數位電壓值?
|
||||
---|---|---|---|---|
初級會員
|
參照:
I/O腳有9隻,一隻類比輸入,8之數位輸出 怪的是只有七之腳有訊號(0111 1111)
發表於: 2009/5/4 8:36
|
|||
|
Re: 請問類比數位電壓值?
|
||||
---|---|---|---|---|
資深會員
|
I/O腳有沒有設成類比輸入?
發表於: 2009/5/4 7:19
|
|||
不要問我哪裡來,我只是個流浪天涯的工程師
|
||||
|
請問類比數位電壓值?
|
||||
---|---|---|---|---|
初級會員
|
使用ic 4011 (輸入類比 轉可變電阻 0~5v)
我是從EX11_1_ADC_Manual範列修改, 想請問我設PORTB=ADCValue; PORTB有8之i/o , 照理說,應該是8之0v 或 5v 的電壓輸出 可是現在卻最高腳位沒訊號輸出 0111 1111 我是用數位輸出的訊號再做d/a, 所以應該是0~2.55v (d/a) 但是現在轉動可變電阻, 電壓卻 0~1.27v . 0 ~ 1.27v 中間會突然跳零再生至1.27v 請問這是何因?? 另一個問題,通常訊號應該是0v or 5V 可是在量電壓時,會有2v or 3v 的電壓(少數一兩隻), 其它腳位就0v or 5v , 不知道是我哪邊搞錯了?
發表於: 2009/5/3 23:16
|
|||
|