線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1572
推到 Plurk!
推到 Facebook!

如何將GPIO讀到的0.1訊號,存放到一個陣列,並以16進制的格式輸出?

答題得分者是:暗黑破壞神
Tommy0325
一般會員


發表:5
回覆:4
積分:1
註冊:2007-05-04

發送簡訊給我
#1 引用回覆 回覆 發表時間:2007-07-16 00:14:02 IP:140.126.xxx.xxx 訂閱
請教一下:

我使用2之GPIO腳位
P2.17=CLCOK
P2.19=DATA
我使用MCU的GPIO腳來讀取資料回傳的訊號訊號..當MCU的CLOCK為High(上升沿)的時候我可以得到GPIO腳位DATA的準位~~不是接收到High不然就是接收Low!!

若要將接收到的DATA訊號以8次接收的訊號(8Bits=1Byte)存放到一個陣列裡....並且DATA先接收的訊號要存放到陣列的LSB...DATA最後接收到的訊號存放至MSB...堆疊的觀念..最後要將這個陣列的資料以printf()輸出....例如輸出的格式是A8(#16進制).....程式應該要怎麼表示呢??

希望能得到具體有建設性的答案..不要得到的答案只是說這很簡單..因為我來這邊發問就是想學習..
麻煩程式高手指導一下~~謝謝!!
暗黑破壞神
版主


發表:9
回覆:2301
積分:1627
註冊:2004-10-04

發送簡訊給我
#2 引用回覆 回覆 發表時間:2007-07-16 11:19:30 IP:61.225.xxx.xxx 未訂閱
這個真的是很簡單。
只是你有沒有搞清楚幾件事情而已。
>存放到一個陣列,並以16進制的格式輸出?
資料如何存放到”陣列”?你會了嗎?
以 16 進制的格式輸出你會了嗎?

CLOCK 的改變,你的 MCU 怎麼知道?你有規劃嗎?
要不斷的去掃,還是用 timer? 還是要用 interrupt? 你有想過嗎?

如何判定這個 byte 的啟始位元?你有規劃這個通訊方法嗎?

答案是很簡單,每一步你都要去思考怎麼解決。
想要人能指導你,你要先說清楚你的問題點在那邊。
而不是把這一大串的問題全丟上來。
你先想清楚你的問題出在那邊吧。

===================引 用 Tommy0325 文 章===================
請教一下:

我使用2之GPIO腳位
P2.17=CLCOK
P2.19=DATA
我使用MCU的GPIO腳來讀取資料回傳的訊號訊號..當MCU的CLOCK為High(上升沿)的時候我可以得到GPIO腳位DATA的準位~~不是接收到High不然就是接收Low!!

若要將接收到的DATA訊號以8次接收的訊號(8Bits=1Byte)存放到一個陣列裡....並且DATA先接收的訊號要存放到陣列的LSB...DATA最後接收到的訊號存放至MSB...堆疊的觀念..最後要將這個陣列的資料以printf()輸出....例如輸出的格式是A8(#16進制).....程式應該要怎麼表示呢??

希望能得到具體有建設性的答案..不要得到的答案只是說這很簡單..因為我來這邊發問就是想學習..
麻煩程式高手指導一下~~謝謝!!
Tommy0325
一般會員


發表:5
回覆:4
積分:1
註冊:2007-05-04

發送簡訊給我
#3 引用回覆 回覆 發表時間:2007-07-16 15:31:32 IP:140.126.xxx.xxx 訂閱
存放到一個陣列,並以16進制的格式輸出?
資料如何存放到”陣列”?你會了嗎?
ANS:會陣列,但是對於將所有掃描的準位一次放入,不是很熟,就是不太清楚才來問..請指導,不要一直罵我..
以 16 進制的格式輸出你會了嗎?

CLOCK 的改變,你的 MCU 怎麼知道?你有規劃嗎?

ANS:我的電路有獨立CLOCK,MCU也有CLOCK,所以我是用偵測GPIO腳位的變化,我有提到過...我的MCU的CLOCK比電路CLOCK的時脈還要快...
要不斷的去掃,還是用 timer? 還是要用 interrupt? 你有想過嗎?

如何判定這個 byte 的啟始位元?你有規劃這個通訊方法嗎?
ANS:我要先將啟始位元掃出來,我才會規定他為我第一個Bit......

答案是很簡單,每一步你都要去思考怎麼解決。
想要人能指導你,你要先說清楚你的問題點在那邊。
ANS:我說的很清楚....對於你這種高手很簡單...但是對於初學者必須思考過後..問題知道在哪..我才能將問題提出來...我也有提的很清楚了...謝謝!!
而不是把這一大串的問題全丟上來。
你先想清楚你的問題出在那邊吧。
暗黑破壞神
版主


發表:9
回覆:2301
積分:1627
註冊:2004-10-04

發送簡訊給我
#4 引用回覆 回覆 發表時間:2007-07-16 18:40:59 IP:61.225.xxx.xxx 未訂閱
所以你的問題只在怎麼把它放進陣列嗎?

===================引 用 Tommy0325 文 章===================
存放到一個陣列,並以16進制的格式輸出?
資料如何存放到”陣列”?你會了嗎?
ANS:會陣列,但是對於將所有掃描的準位一次放入,不是很熟,就是不太清楚才來問..請指導,不要一直罵我..
以 16 進制的格式輸出你會了嗎?

CLOCK 的改變,你的 MCU 怎麼知道?你有規劃嗎?

ANS:我的電路有獨立CLOCK,MCU也有CLOCK,所以我是用偵測GPIO腳位的變化,我有提到過...我的MCU的CLOCK比電路CLOCK的時脈還要快...
要不斷的去掃,還是用 timer? 還是要用 interrupt? 你有想過嗎?

如何判定這個 byte 的啟始位元?你有規劃這個通訊方法嗎?
ANS:我要先將啟始位元掃出來,我才會規定他為我第一個Bit......

答案是很簡單,每一步你都要去思考怎麼解決。
想要人能指導你,你要先說清楚你的問題點在那邊。
ANS:我說的很清楚....對於你這種高手很簡單...但是對於初學者必須思考過後..問題知道在哪..我才能將問題提出來...我也有提的很清楚了...謝謝!!
而不是把這一大串的問題全丟上來。
你先想清楚你的問題出在那邊吧。
Tommy0325
一般會員


發表:5
回覆:4
積分:1
註冊:2007-05-04

發送簡訊給我
#5 引用回覆 回覆 發表時間:2007-07-16 19:33:27 IP:140.126.xxx.xxx 訂閱
是的....請大哥你指導..對了,你的身分是老師嘛?我感覺你應該是老師!!
暗黑破壞神
版主


發表:9
回覆:2301
積分:1627
註冊:2004-10-04

發送簡訊給我
#6 引用回覆 回覆 發表時間:2007-07-16 20:00:08 IP:61.225.xxx.xxx 未訂閱
我不是老師。我只是個無業遊民,好管閒事。
好吧。依你說的。後面你都會了。(其實我是懷疑啦,不過你說會就會。)
那你可以找到 start bit 了嘛。
那你就找個 counter 來用。
array [counter] = hi/low 記錄。
而每一次 clock 變動時,你就把 counter 加一,這個你要看你的 counter 要在上昇緣做還是下降,還是平 level 時做。
這個你去思考。這個部份在硬體上沒那麼簡單。

那經過 array[count] 16 次以後,不就可以得到你要的 串列了嗎?
PS。我反而覺得這個部份是最簡單的。

喔。再附贈一個,你要怎麼把這個串列變成一個 word 也就是兩個 byte.
你可以宣告一個 unsigned short(確保最高位不會變成符號)
然後用<<或是>>來把一個 bit 一個 bit 的數據”推入”目標。

就會是你要的了。
===================引 用 暗黑破壞神 文 章===================
所以你的問題只在怎麼把它放進陣列嗎?

===================引 用 Tommy0325 文 章===================
存放到一個陣列,並以16進制的格式輸出?
資料如何存放到”陣列”?你會了嗎?
ANS:會陣列,但是對於將所有掃描的準位一次放入,不是很熟,就是不太清楚才來問..請指導,不要一直罵我..
以 16 進制的格式輸出你會了嗎?

CLOCK 的改變,你的 MCU 怎麼知道?你有規劃嗎?

ANS:我的電路有獨立CLOCK,MCU也有CLOCK,所以我是用偵測GPIO腳位的變化,我有提到過...我的MCU的CLOCK比電路CLOCK的時脈還要快...
要不斷的去掃,還是用 timer? 還是要用 interrupt? 你有想過嗎?

如何判定這個 byte 的啟始位元?你有規劃這個通訊方法嗎?
ANS:我要先將啟始位元掃出來,我才會規定他為我第一個Bit......

答案是很簡單,每一步你都要去思考怎麼解決。
想要人能指導你,你要先說清楚你的問題點在那邊。
ANS:我說的很清楚....對於你這種高手很簡單...但是對於初學者必須思考過後..問題知道在哪..我才能將問題提出來...我也有提的很清楚了...謝謝!!
而不是把這一大串的問題全丟上來。
你先想清楚你的問題出在那邊吧。
系統時間:2024-05-12 6:57:02
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!