|
|||||||||||
| 技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng) 驅(qū)動編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機 | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計 | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe |
請教各位一個變量賦值的問題 |
| 作者:不辣的皮特 欄目:單片機 |
/ ADC end-of-conversion ISR // Here we take the ADC SAMPLE, add it to a running total <accumulator>, and // decrement our local decimation counter <int_dec>. When <int_dec> reaches // zero, we calculate the new VALUE of the GLOBAL variable <result>, // which stores the accumulated ADC result. // void ADC_isr (void) interrupt 15 { static unsigned int_dec=256; // integrate/decimate counter // we post a new result when // int_dec = 0 static LONG accumulator=0L; // heres where we integrate the // ADC SAMPLEs ADCINT = 0; // clear ADC conversion complete // indicator accumulator += ADC0; // read ADC VALUE and add to running // total int_dec--; // update decimation counter if (int_dec == 0) { // if zero, then decimate int_dec = 256; // reset counter result = accumulator >> 4; // Shift to perform the divide operation accumulator = 0L; // dump accumulator } } 我的問題是:int_dec 和 accumulator 這兩個變量的賦值是不是應(yīng)該放在中斷服務(wù)程序的外面? |
| 2樓: | >>參與討論 |
| 作者: 不辣的皮特 于 2005/1/13 12:07:00 發(fā)布:
沒人回答我 |
|
| 3樓: | >>參與討論 |
| 作者: computer00 于 2005/1/13 12:34:00 發(fā)布:
一個變量聲明為靜態(tài)變量時,如果有初始化,則初始化只執(zhí)行一次 放在外邊,就是全局變量。 放在里邊,就是局部變量。 一個變量聲明為靜態(tài)變量時,如果有初始化,則初始化只執(zhí)行一次。 這個在普通函數(shù)里是這樣規(guī)定的。 在中斷服務(wù)函數(shù)里,是否是這樣,我就不清楚了。 我想應(yīng)該是一樣的吧。 |
|
| 4樓: | >>參與討論 |
| 作者: 不辣的皮特 于 2005/1/13 13:24:00 發(fā)布:
不會吧? 那里可以找到這方面的詳細介紹呢? |
|
| 5樓: | >>參與討論 |
| 作者: computer00 于 2005/1/13 13:34:00 發(fā)布:
看C語言的書 如果每次都重新初始化,那就失去了靜態(tài)變量的意義了。 |
|
| 6樓: | >>參與討論 |
| 作者: lovehefeng 于 2005/1/13 13:37:00 發(fā)布:
very GOOD |
|
| 7樓: | >>參與討論 |
| 作者: 不辣的皮特 于 2005/1/13 18:00:00 發(fā)布:
感謝 |
|
| 8樓: | >>參與討論 |
| 作者: 李冬發(fā) 于 2005/1/13 18:20:00 發(fā)布:
computer00說的是正確的,但要補充些才完善 如果 int_dec 和 accumulator 只在這個函數(shù)中用到,則就應(yīng)該放在內(nèi)部(這是規(guī)矩);如果還有其它程序也要用到,則就要放在外部,中斷服務(wù)程序內(nèi)用到的還要聲明為volatile屬性。 中斷服務(wù)函數(shù)與普通函數(shù)是一樣的。 |
|
| 9樓: | >>參與討論 |
| 作者: 不辣的皮特 于 2005/1/13 23:26:00 發(fā)布:
謝謝 李先生 的指點 |
|
|
|
| 免費注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點此進入 |
Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號 |