|
|||||||||||
| 技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測(cè)控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng) 驅(qū)動(dòng)編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計(jì) | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe |
跳不出While循環(huán)!!想了好久都找不出原因!!求助大家了!。! |
| 作者:good_ys 欄目:單片機(jī) |
在如下函數(shù)中,While循環(huán)怎么也跳不出,老在那執(zhí)行,想了好久也不知什么原因??求助大家了。 void SysternFlow_deal(void) { ...... ...... while(!Binding_state) /*怎么也跳不出這個(gè)循環(huán)???*/ { if(Time_sec>3) /*等待3S,超過(guò)3S跳出循環(huán)*/ { Binding_state=0x77; break; } } ...... ...... } SIGNAL(SIG_OVERFLOW0) /*timer0中斷人口,經(jīng)測(cè)試沒(méi)問(wèn)題,能正常運(yùn)行,計(jì)時(shí)也很準(zhǔn)確*/ { TCNT0=0x3C; /*50ms定時(shí),F(xiàn)os:4M 1024 分頻*/ Time_num++; if(Time_num>=20) { Time_num=0; Time_sec++; /*滿1S自加*/ } } 難道是在中斷函數(shù)中改變?nèi)肿兞縏ime_sec 的值,Time_sec不能傳遞到其它函數(shù)中去嗎??百思不得其解,只好請(qǐng)教大家!先謝!! * - 本貼最后修改時(shí)間:2005-1-18 21:49:24 修改者:good_ys |
| 2樓: | >>參與討論 |
| 作者: zalin 于 2005/1/18 23:54:00 發(fā)布:
volatile volatile volatile volatile volatile volatile...... |
|
| 3樓: | >>參與討論 |
| 作者: forest_j 于 2005/1/19 11:36:00 發(fā)布:
同上 常見(jiàn)問(wèn)題,編譯優(yōu)化造成的。 用volatile修飾計(jì)時(shí)變量 |
|
| 4樓: | >>參與討論 |
| 作者: good_ys 于 2005/1/19 15:22:00 發(fā)布:
謝謝zalin&&forest_j 變量加了volatile修飾后,程序運(yùn)行正常,只是FLASH耗損多了些。謝謝你們兩位的熱心相助! |
|
| 5樓: | >>參與討論 |
| 作者: qjy_dali 于 2005/1/20 18:03:00 發(fā)布:
volatile:硬件人員專用的C關(guān)鍵字,呵呵 |
|
|
|
| 免費(fèi)注冊(cè)為維庫(kù)電子開(kāi)發(fā)網(wǎng)會(huì)員,參與電子工程師社區(qū)討論,點(diǎn)此進(jìn)入 |
Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號(hào) |