pande
@pande1104
正在
Thu, Mar 30, 2017 3:17 AM
LEGO EV3介面抓Bug
pande
@pande1104
說
Fri, Mar 31, 2017 6:40 AM
前續
2017-1-15
[pande] 咕咕鐘亂亂看(程式)
2017-2-3
[pande] LEGO亂亂看(咕咕鐘:齒輪、程式)
pande
@pande1104
說
Fri, Mar 31, 2017 6:40 AM
進度整理
2017-2-21
[pande] (日常) 睡9個小時,終於補眠了
兩個問題
pande
@pande1104
說
Fri, Mar 31, 2017 6:40 AM
上次上課借了EV3主機回來
2017-3-24
[pande] (樂高) 太極生陰陽 下午畫LDD「SPM機械手臂...
第一個問題 loop count
2017-3-27
[pande] LEGO EV3主機神秘試驗(?)
pande
@pande1104
正在
Fri, Mar 31, 2017 6:42 AM
這次是第二個問題
是有關迴圈 "interrupt" 機制的問題
pande
@pande1104
說
Fri, Mar 31, 2017 6:53 AM
為什麼針對03迴圈的interrupt,可以把執行緒外面的02迴圈也中斷跳出?
interrupt有什麼應該知道的運作機制,是我不知道的嗎???
pande
@pande1104
說
Fri, Mar 31, 2017 6:59 AM
做了一個試驗程式
正常開啟,主機面板亮黃燈
按下touch sensor 超過1秒,主機面板亮紅燈,然後說"good job"
pande
@pande1104
說
Fri, Mar 31, 2017 7:03 AM
正常預期是03迴圈會被中斷,然後執行02迴圈裡面的"等1秒"
如果interrupt可以中斷02迴圈,執行緒將會跳出02迴圈,然後開始執行switch的另外一邊,也就是「主機面板亮紅燈,然後說"good job"」
pande
@pande1104
說
Fri, Mar 31, 2017 7:05 AM
Fri, Mar 31, 2017 7:07 AM
實測的結果是
針對03迴圈的interrupt,沒有辦法中斷並跳出02迴圈
pande
@pande1104
問
Fri, Mar 31, 2017 7:07 AM
Tue, Jun 27, 2017 9:36 AM
那就奇了,咕咕鐘裡面的interrupt是怎麼回事? 怎麼那麼神??
不但跳出03,連02都一起中斷了是怎樣???
pande
@pande1104
說
Fri, Mar 31, 2017 7:20 AM
於是我把咕咕鐘原程式裡面的那一段
直接複製貼上到試驗程式裡面
讓touch sensor來中斷02與03… 耶?
02與03… 咦? 02咧? 我眼花??
pande
@pande1104
說
Fri, Mar 31, 2017 7:21 AM
回去看咕咕鐘
真的是03、03、02三層啊
怎麼貼到這邊就變成03、03、03,全部都是03了??
pande
@pande1104
想
Fri, Mar 31, 2017 7:22 AM
難道是顯示的問題…? orz (實際數值是03,但錯誤
顯示
成02?
pande
@pande1104
說
Fri, Mar 31, 2017 7:26 AM
回去看看咕咕鐘
乾,還真的咧orzz 那不就是介面的bug了嗎
pande
@pande1104
想
Fri, Mar 31, 2017 7:29 AM
Fri, Mar 31, 2017 7:30 AM
原來只是顯示的bug、跟本不是interrupt我的認知有誤嗎=.=
無心插柳,幫LabVIEW除蟲了嗎
pande
@pande1104
想
Fri, Mar 31, 2017 7:32 AM
Fri, Mar 31, 2017 1:53 PM
害得我好開心又可以給自己
精進
了說
pande
@pande1104
說
Fri, Mar 31, 2017 7:35 AM
那麼,這個bug的機制大概是怎樣呢?
pande
@pande1104
說
Fri, Mar 31, 2017 7:41 AM
Fri, Mar 31, 2017 7:42 AM
開一個小程式模擬試試看
switch裡面的多重迴圈,最後一個編輯的最外層迴圈編號,會影響前一次編輯的其他switch分支的最外層迴圈編號的顯示,但並不會改動實際數值(不影響運作)
pande
@pande1104
說
Fri, Mar 31, 2017 7:45 AM
但會造成像我這種無聊人士的困擾
pande
@pande1104
說
Fri, Mar 31, 2017 7:48 AM
好啦~
咕咕鐘程式,完全攻略
載入新的回覆
2017-1-15 [pande] 咕咕鐘亂亂看(程式)
2017-2-3 [pande] LEGO亂亂看(咕咕鐘:齒輪、程式)
2017-2-21 [pande] (日常) 睡9個小時,終於補眠了
兩個問題
2017-3-24 [pande] (樂高) 太極生陰陽 下午畫LDD「SPM機械手臂...
第一個問題 loop count
2017-3-27 [pande] LEGO EV3主機神秘試驗(?)
是有關迴圈 "interrupt" 機制的問題
interrupt有什麼應該知道的運作機制,是我不知道的嗎???
正常開啟,主機面板亮黃燈
按下touch sensor 超過1秒,主機面板亮紅燈,然後說"good job"
如果interrupt可以中斷02迴圈,執行緒將會跳出02迴圈,然後開始執行switch的另外一邊,也就是「主機面板亮紅燈,然後說"good job"」
針對03迴圈的interrupt,沒有辦法中斷並跳出02迴圈
不但跳出03,連02都一起中斷了是怎樣???
直接複製貼上到試驗程式裡面
讓touch sensor來中斷02與03… 耶?
02與03… 咦? 02咧? 我眼花??
真的是03、03、02三層啊
怎麼貼到這邊就變成03、03、03,全部都是03了??
乾,還真的咧orzz 那不就是介面的bug了嗎
無心插柳,幫LabVIEW除蟲了嗎
switch裡面的多重迴圈,最後一個編輯的最外層迴圈編號,會影響前一次編輯的其他switch分支的最外層迴圈編號的顯示,但並不會改動實際數值(不影響運作)
咕咕鐘程式,完全攻略