Re: 如何讀取6個 ADC channel
|
||||
---|---|---|---|---|
初級會員
|
謝謝 已經解決
小弟目前用的方法是以單數次進interrupt就讀AN0-AN3 雙數次進interrupt就讀AN4-AN5-AN2-AN3的折衷方式來做 因為在INTERRUPT裡面取完AN0-AN3之後馬上切ADCHS到AN4-AN5的話是會讀不到值的
發表於: 2007/8/1 12:54
|
|||
|
如何讀取6個 ADC channel
|
||||
---|---|---|---|---|
初級會員
|
小弟目前使用p18f4331,擁有9個adc channel,我想要使用其中的六個an0-an5,但我知道可以一次讀取4個channel AN0-AN3(group ABCD),但讀取完之後,要如何再去讀取AN4-AN5這兩個channel呢(group AB)? 是否group ABCD讀完以後,把ADCHS切到AN4 (groupA) AN5 (groupB),再重新GO=1讀取一次呢?這個方式似乎沒有用,以下是小弟程式碼,請各位前輩指教!
ADCHS=0x00; //groupABCD=AN0-AN3 ANSEL0=00111111; ADIF=0; ADIE=1; GIE=1; ADON=1; GO=1; void READ_ADC(void) { if(ADIF==1) { ACC_STEP=ADRESH; //an0 DEC_STEP=ADRESH; //an1 SPEED_STEP=ADRESH/4; //an2 VOLT_H=ADRESH; //an3 } ADIF=0; ADCHS=00010001; //AN4 (groupA) AN5(groupB), GO=1; if(ADIF==1) { OC=ADRESH; //an4 OT=ADRESH; //an5 } ADCHS=0x00; ADIF=0; GO=1; }
發表於: 2007/7/30 10:20
|
|||
|
Re: PIC18F1230 programming failed
|
||||
---|---|---|---|---|
初級會員
|
謝謝
已經解決,除了VDD VSS之間的0.1u 另外拉線也要直接拉到電源和地而且拉線不能借道
發表於: 2007/6/14 12:51
|
|||
|
Re: pic18f4331 update duty cycle,週期跟著改變?
|
||||
---|---|---|---|---|
初級會員
|
終於找到問題!
原來是AVdd,AVss和Vdd,Vss必須要個別接到電源端和地,否則靈異現象會非常的多
發表於: 2007/6/14 9:38
|
|||
|
pic18f4331 update duty cycle,週期跟著改變?
|
||||
---|---|---|---|---|
初級會員
|
請教一下各位大大,
我在main裡面有個 while(1) { TD_L=TARGET_DUTY; TD_H=(TARGET_DUTY>>8); TD_H=TD_H&0x3F; PDC0H=TD_H; PDC0L=TD_L; } duty cycle會在TMR0 的ISR中有變化,利用while(1)迴圈,我在ISR裡面只要更改TARET_DUTY值就可以修改PDC0H/L的值,但是問題是如果這樣做的話,似乎會影響到PTPERH/L的值,造成週期跟著改變,不曉得為什麼?
發表於: 2007/6/13 11:15
|
|||
|
PIC18F1230 programming failed
|
||||
---|---|---|---|---|
初級會員
|
請教各位前輩,小弟的PIC18F1230在用ICD2作DEBUG時,8Mhz~16Mhz是正常的 (OSC MODE選HS),但由於小弟需要時脈跑到40Mhz,因此我就外掛10Mhz crystal(OSC MDOE選HS-PLL),但是一選到HS-PLL後, 燒錄進去時就會出現
ICD0154: Invalid target mode for requested operation (TM = Running) ICD0275: Programming failed. ICD2就會出現ERROR燈號, 想請教該如何解決? 到底是IC有問題或是ICD2有問題?謝謝
發表於: 2007/6/8 18:02
|
|||
|
C/asm嵌入object code的問題
|
||||
---|---|---|---|---|
初級會員
|
想請教各位先進
目前想把自己作好的library送出去給他人使用 但怕對方不懂link obj/lib的方法, 因此我有聽過可以在C code裡面嵌入自己library的obj code, 弄成一個header, 如此一來只要對方include我的h, 就能使用我的library裡面的function, 但不確定到底詳細方法為何 類似如: char test() { //obj code 0x03 0x56 0x12 0xA0.... 0xF1 0x44 0x55 0x66.... .... //--- return value; } 有沒有前輩能夠指點一下呢? thanx!
發表於: 2007/1/17 11:53
|
|||
|
Re: 關於製作LIBRARY
|
||||
---|---|---|---|---|
初級會員
|
那請問我CALL 該obj檔的 c檔中, 需要做include, 或是宣告extern之類的動作嗎?
thanx!
發表於: 2006/12/13 13:24
|
|||
|
Re: 關於製作LIBRARY
|
||||
---|---|---|---|---|
初級會員
|
Thanks, 我已經將obj檔產出了,請問在MPLAB環境下,使用該obj的專案要如何將obj檔include進來,小弟是以CCS做COMPILER,請問該如何設定build option或是其他設定?
發表於: 2006/12/12 18:24
|
|||
|