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

Keyboard 偵測與背光 ( VHDL)

缺席
1666362
初階會員


發表:66
回覆:124
積分:43
註冊:2004-07-07

發送簡訊給我
#1 引用回覆 回覆 發表時間:2008-06-29 21:57:09 IP:202.132.xxx.xxx 訂閱
Function : Keyboard 上的按紐任何一顆按下之後, 背光就要亮3秒左右,然後背光熄滅.
但是背光在亮的這三秒之內,如果有按鑑又被按下,則三秒重新計數.
-----------------------------------------------------------------------------------------------------------------
想問一下版大幾個問題:
1. 在VHDLKeyscan的程式裡面 怎樣把狀態讀到之後 直接做LED的開啟.
( 現在我的LED狀態很奇怪,我按鑑按下背光會亮, 可是當我手放開 背光就會滅?? 怎樣這樣呢??)
2. 假設我案鑑按下之後背光直接開啟 計算3秒的時間,但是如果這三秒之內又有按鑑被按下,
在VHDL裡面 該怎樣重新計算時間呢??
----------------------------------------------------------------------------------------------------------------
aki
版主


發表:30
回覆:696
積分:755
註冊:2004-01-15

發送簡訊給我
#2 引用回覆 回覆 發表時間:2008-06-29 22:11:56 IP:220.139.xxx.xxx 訂閱
我的作法會是比較像寫 CPU 軟體的作法.
(1)我會在 CPLD/FPGA 外加一個 Crystal 作一個 clock
(2)作一個 3 秒的 Counter,進行倒數.
(3)如果 Key 被按了啟動 3 秒的 counter 倒數.
(4)再這 3 秒內 key 被按了則檢查 counter 為 0 嗎?
(5)如果是則 to (3),如果不是則把 counter 變為 0 再 to (3).

以上供你做參考,也許沒有考慮的很仔細! Sorry!

===================引 用 1666362 文 章===================
Function : Keyboard 上的按紐任何一顆按下之後, 背光就要亮3秒左右,然後背光熄滅.
但是背光在亮的這三秒之內,如果有按鑑又被按下,則三秒重新計數.
-----------------------------------------------------------------------------------------------------------------
想問一下版大幾個問題:
1. 在VHDLKeyscan的程式裡面 怎樣把狀態讀到之後 直接做LED的開啟.
( 現在我的LED狀態很奇怪,我按鑑按下背光會亮, 可是當我手放開 背光就會滅?? 怎樣這樣呢??)
2. 假設我案鑑按下之後背光直接開啟 計算3秒的時間,但是如果這三秒之內又有按鑑被按下,
在VHDL裡面 該怎樣重新計算時間呢??
----------------------------------------------------------------------------------------------------------------
1666362
初階會員


發表:66
回覆:124
積分:43
註冊:2004-07-07

發送簡訊給我
#3 引用回覆 回覆 發表時間:2008-06-29 22:17:45 IP:202.132.xxx.xxx 訂閱
這想法是跟我一樣的.
但是 現在是我用VHDL...=.= 不知道 該怎樣處理 這樣的問題
clock已經有了
===================引 用 aki 文 章===================
我的作法會是比較像寫 CPU 軟體的作法.
(1)我會在 CPLD/FPGA 外加一個 Crystal 作一個 clock
(2)作一個 3 秒的 Counter,進行倒數.
(3)如果 Key 被按了啟動 3 秒的 counter 倒數.
(4)再這 3 秒內 key 被按了則檢查 counter 為 0 嗎?
(5)如果是則 to (3),如果不是則把 counter 變為 0 再 to (3).

以上供你做參考,也許沒有考慮的很仔細! Sorry!

===================引 用 1666362 文 章===================
Function : Keyboard 上的按紐任何一顆按下之後, 背光就要亮3秒左右,然後背光熄滅.
但是背光在亮的這三秒之內,如果有按鑑又被按下,則三秒重新計數.
-----------------------------------------------------------------------------------------------------------------
想問一下版大幾個問題:
1. 在VHDLKeyscan的程式裡面 怎樣把狀態讀到之後 直接做LED的開啟.
( 現在我的LED狀態很奇怪,我按鑑按下背光會亮, 可是當我手放開 背光就會滅?? 怎樣這樣呢??)
2. 假設我案鑑按下之後背光直接開啟 計算3秒的時間,但是如果這三秒之內又有按鑑被按下,
在VHDL裡面 該怎樣重新計算時間呢??
----------------------------------------------------------------------------------------------------------------
aki
版主


發表:30
回覆:696
積分:755
註冊:2004-01-15

發送簡訊給我
#4 引用回覆 回覆 發表時間:2008-06-29 22:20:24 IP:220.139.xxx.xxx 訂閱
VHDL 的書應該有寫這幾個部份.



===================引 用 1666362 文 章===================
這想法是跟我一樣的.
但是 現在是我用VHDL...=.= 不知道 該怎樣處理 這樣的問題
clock已經有了
===================引 用 aki 文 章===================
我的作法會是比較像寫 CPU 軟體的作法.
(1)我會在 CPLD/FPGA 外加一個 Crystal 作一個 clock
(2)作一個 3 秒的 Counter,進行倒數.
(3)如果 Key 被按了啟動 3 秒的 counter 倒數.
(4)再這 3 秒內 key 被按了則檢查 counter 為 0 嗎?
(5)如果是則 to (3),如果不是則把 counter 變為 0 再 to (3).

以上供你做參考,也許沒有考慮的很仔細! Sorry!


編輯記錄
aki 重新編輯於 2008-06-29 22:21:23, 註解 無‧
1666362
初階會員


發表:66
回覆:124
積分:43
註冊:2004-07-07

發送簡訊給我
#5 引用回覆 回覆 發表時間:2008-06-29 22:25:13 IP:202.132.xxx.xxx 訂閱
有!!但是很不詳細!!!
Code的架構就是跟aki大您想的一樣

嘗試好幾天 就是 跟我想做出來的結果差很多 =.=
===================引 用 aki 文 章===================
VHDL 的書應該有寫這幾個部份.



===================引 用 1666362 文 章===================
這想法是跟我一樣的.
但是 現在是我用VHDL...=.= 不知道 該怎樣處理 這樣的問題
clock已經有了
===================引 用 aki 文 章===================
我的作法會是比較像寫 CPU 軟體的作法.
(1)我會在 CPLD/FPGA 外加一個 Crystal 作一個 clock
(2)作一個 3 秒的 Counter,進行倒數.
(3)如果 Key 被按了啟動 3 秒的 counter 倒數.
(4)再這 3 秒內 key 被按了則檢查 counter 為 0 嗎?
(5)如果是則 to (3),如果不是則把 counter 變為 0 再 to (3).

以上供你做參考,也許沒有考慮的很仔細! Sorry!


aki
版主


發表:30
回覆:696
積分:755
註冊:2004-01-15

發送簡訊給我
#6 引用回覆 回覆 發表時間:2008-06-29 22:28:03 IP:220.139.xxx.xxx 訂閱
說實在的要看很多本,交叉這看 VHDL 才會融會貫通!


===================引 用 1666362 文 章===================
有!!但是很不詳細!!!
Code的架構就是跟aki大您想的一樣

嘗試好幾天 就是 跟我想做出來的結果差很多 =.=
===================引 用 aki 文 章===================
VHDL 的書應該有寫這幾個部份.



===================引 用 1666362 文 章===================
這想法是跟我一樣的.
但是 現在是我用VHDL...=.= 不知道 該怎樣處理 這樣的問題
clock已經有了
===================引 用 aki 文 章===================
我的作法會是比較像寫 CPU 軟體的作法.
(1)我會在 CPLD/FPGA 外加一個 Crystal 作一個 clock
(2)作一個 3 秒的 Counter,進行倒數.
(3)如果 Key 被按了啟動 3 秒的 counter 倒數.
(4)再這 3 秒內 key 被按了則檢查 counter 為 0 嗎?
(5)如果是則 to (3),如果不是則把 counter 變為 0 再 to (3).

以上供你做參考,也許沒有考慮的很仔細! Sorry!


1666362
初階會員


發表:66
回覆:124
積分:43
註冊:2004-07-07

發送簡訊給我
#7 引用回覆 回覆 發表時間:2008-06-29 22:31:59 IP:202.132.xxx.xxx 訂閱
有問題 就先問啦`` =.=
如果是C code早就搞定啦~~~
現在是VHDL =.= 要貫通...先等我把老闆搞定 在慢慢貫通啦~~~
===================引 用 aki 文 章===================
說實在的要看很多本,交叉這看 VHDL 才會融會貫通!


===================引 用 1666362 文 章===================
有!!但是很不詳細!!!
Code的架構就是跟aki大您想的一樣

嘗試好幾天 就是 跟我想做出來的結果差很多 =.=
===================引 用 aki 文 章===================
VHDL 的書應該有寫這幾個部份.



===================引 用 1666362 文 章===================
這想法是跟我一樣的.
但是 現在是我用VHDL...=.= 不知道 該怎樣處理 這樣的問題
clock已經有了
===================引 用 aki 文 章===================
我的作法會是比較像寫 CPU 軟體的作法.
(1)我會在 CPLD/FPGA 外加一個 Crystal 作一個 clock
(2)作一個 3 秒的 Counter,進行倒數.
(3)如果 Key 被按了啟動 3 秒的 counter 倒數.
(4)再這 3 秒內 key 被按了則檢查 counter 為 0 嗎?
(5)如果是則 to (3),如果不是則把 counter 變為 0 再 to (3).

以上供你做參考,也許沒有考慮的很仔細! Sorry!


addn
高階會員


發表:64
回覆:221
積分:202
註冊:2005-03-21

發送簡訊給我
#8 引用回覆 回覆 發表時間:2008-06-30 18:11:29 IP:218.171.xxx.xxx 訂閱
您好
弄個同步清除的計數器,應該就能解決了
鍵盤掃描,每當偵測到有鍵按下,就送出一訊
號(訊號長度剛好是一個clock週期的時間)來reset計數器

計數器要與鍵盤同步
每當接收到掃描送來的reset訊號,就清除計數值
否則就計數,當數到預定的計數值就停止計數

當計數器停止計數時LED滅,否則亮
1666362
初階會員


發表:66
回覆:124
積分:43
註冊:2004-07-07

發送簡訊給我
#9 引用回覆 回覆 發表時間:2008-06-30 22:20:51 IP:202.132.xxx.xxx 訂閱
恩!!!
我知道
問題出在VHDL的做法, 一直卡住=.=
===================引 用 addn 文 章===================
您好
弄個同步清除的計數器,應該就能解決了
鍵盤掃描,每當偵測到有鍵按下,就送出一訊
號(訊號長度剛好是一個clock週期的時間)來reset計數器

計數器要與鍵盤同步
每當接收到掃描送來的reset訊號,就清除計數值
否則就計數,當數到預定的計數值就停止計數

當計數器停止計數時LED滅,否則亮
系統時間:2024-05-19 8:07:12
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!