logo资料库

BS8XXXXC軟件包使用手冊V501_20190424_V3.pdf

第1页 / 共19页
第2页 / 共19页
第3页 / 共19页
第4页 / 共19页
第5页 / 共19页
第6页 / 共19页
第7页 / 共19页
第8页 / 共19页
资料共19页,剩余部分请下载后查看
BS8XXXXC 觸控軟件包使用手冊 2019/04/24 V501 Page 1 of 19 20190424 V501
目錄 1.0 版本異動........................................................................................................ 3 2.0 軟件包介紹.................................................................................................... 4 2.1 軟件包結構 / 命名規則 .................................................................................... 4 2.2 觸控軟件包介紹 ................................................................................................. 4 2.2.1 功能介紹 ............................................................................................................................... 4 2.2.2 佔用資源 ............................................................................................................................... 6 2.2.3 參數介紹 ............................................................................................................................... 8 2.2.3.1 參數列表 .................................................................................................................... 8 2.2.3.2 參數說明 .................................................................................................................... 8 2.2.4 函數介紹(請參考 *.AEX 或 *.CEX 檔的內容) .......................................................... 9 2.2.4.1 資料 RAM .................................................................................................................. 9 2.2.4.2 標誌位 ...................................................................................................................... 10 2.2.4.3 副程序 ...................................................................................................................... 10 2.3 共用軟件包(基本功能模塊)介紹 ................................................................ 12 2.3.1 MAIN_PROGRAM .............................................................................................................. 12 2.3.2 USER_PROGRAM ............................................................................................................... 12 2.4 參數定義檔介紹(TKS_GLOBE_VARIES.INC;TKS_GLOBE_VARIES.H) .. 12 3.0 軟件包使用方法.......................................................................................... 13 3.1 使用流程 ........................................................................................................... 13 3.2 設計一個專案 ................................................................................................... 14 3.3 使用軟件包注意事項 ....................................................................................... 16 4.0 附錄.............................................................................................................. 17 4.1 軟件包適用型號 ............................................................................................... 17 4.2 ROM / RAM 宣告方式 (更詳細的說明,請參考 HT-IDE3000 使用手冊)17 4.3 設計一個新的軟件包(功能模塊) ................................................................ 18 4.4 常用軟件包介紹 ............................................................................................... 19 4.5 其它補充事項 ................................................................................................... 19 Page 2 of 19 20190424 V501
1.0 版本異動 日期 2019/04/24 版本 V501 適用型號 BS83A02C;BS83B04C;BS83B08C;BS83B12C; BS83B16C;BS83B24C;BS83C40C;BS84B08C; BS84C12C;BS86C08C; BS86D12C;BS86D20C; BS86E16C; BS86DH12C;BS45F5930; Page 3 of 19 20190424 V501
2.0 軟件包介紹 新一代的軟件包,不再單指只有觸控功能的軟件包,而是將週邊的應用功能都模塊化而這 些功能可藉由原廠、代理商或協力廠商的工程人員,共同來開發並包裝成軟件包的形式, 再提供給有需要的開發者使用,不需重複開發性質相同的軟件功能,以加速產品開發,降 低觸控應用的門檻。V501 的抗干擾能力上與 V413 相比有了較大提升。 2.1 軟件包結構 / 命名規則 為達到功能模塊化,形成不同的軟件包的目的,首先要建立的就是〝規則〞,包含檔案 的組成結構有哪些?以及名稱要如何取?才能讓使用者一看就知道軟件包的功能是什 麼!軟件包的組成結構至少要有 4 個檔案(寫程序所需用到的檔案,未來會視情況增加其 它說明文件,例如:原理圖………等),且主檔名皆相同,只有副檔名不同,用以區分不 用的用途,這 4 個檔案分別為: xxxx.ASM 軟件包的匯編程序檔,若使用 C code 時,則.ASM 用 .C 取代即可, 若有保密需求,則用.OBJ 檔代替,例如:觸控軟件包是提供.OBJ 型式 xxxx.INC 程序檔若有需要參考其它軟件包的參數或名稱或功能時,需將該軟件包 的外部參考檔(.AEX 或.CEX 檔)加到.INC 檔內 xxxx.CEX 此軟件包提供給其它軟件包參考的參考檔(C 語言型式) xxxx.AEX 此軟件包提供給其它軟件包參考的參考檔(匯編型式) 除了具備上述的檔案外,為方便管理未來持續增加的軟件包,必需將這些檔案放置在 相同的資料夾內,且資料夾名稱需和上述檔案的主檔名相同,例如下圖所示 資料夾名稱 資料夾內含檔案 檔案命名(資料夾名稱)越是貼近實際功能描述,越能讓使用者一看就能大致明白 軟件包的功能是什麼、版別是多少以及適用在哪裡! 2.2 觸控軟件包介紹 2.2.1 功能介紹 觸摸鍵硬件控制 設定相關的暫存器;觸摸信號的取樣時間及觸摸鍵的掃描順序 Page 4 of 19 20190424 V501
觸摸信號取樣及濾波 從每組觸摸硬件的第一個鍵同時開始掃描,在預設的時間長度內取得一次觸摸 鍵的信號,接著掃描第二鍵;第三鍵;第四鍵;再回到第一鍵,依此順序循環 不斷讀取觸摸鍵信號,取得信號後,再判斷每次信號間的差異,取出信號的峰 值及平均值,再將峰值信號以移動平均法處理後,可得到二組穩定的信號,並 以穩定的峰值為主要信號,平均值為次要信號來判斷按鍵的觸發邏輯及信號受 干擾程度。 開機平衡 上電後,以二分逼近法的方式,調整內部平衡電容,直到與外部環境(雜散) 電容一致後,即為平衡,可使抗電壓波動性能達到最佳的效果。 按鍵邏輯判斷 依照預設的閥值參數,來判斷觸摸鍵按下及鬆開的邏輯,另外按下的條件有分 兩種:一是所有按下的鍵都承認,二是只承認變量最大的鍵,且不能超過或等 於四個鍵,否則所有按鍵均不承認。 去抖判斷 觸摸鍵壓下或鬆掉的信號必需維持(超過或低於閥值)多久的時間才承認 按鍵態狀的判斷! 電源干擾判斷 利用濾波功能所得到的峰值(波峰和波谷),將這兩組值相互比對,正常情況下, 此兩組值幾乎相等,一旦電源上出現信號較強的干擾源時,此兩組值會開始產 生差距,軟件會判斷當差距到達一定的程度時,視為電源干擾,檢測到有干擾 後,會依參數的設定值,決定是否要關閉按鍵的輸出,避免誤觸發。 按鍵操作時間判斷 判斷觸摸鍵持續按住的時間是否超過參數設定的時間,若超過則立即清除該鍵的 狀態,變成無按鍵! 省電功能處理 無省電功能,如有省電功能需求請更換其它有省電功能的觸摸庫。 自動環境校正 依參數所設定的時間在沒按鍵的態狀下對環境做校正,校正方法採逼近法,將參 考信號逼近實際環境信號,另外也可設定成在有按鍵的狀態下也會動態校正參考 值,以維持穩度的觸發條件 平衡狀態維持 當一段時間內都沒有任何按鍵觸發時,會重複檢查平衡態狀,若檢查到任一鍵有 不平衡的現象時,會重新啟動開機平衡的功能。 Page 5 of 19 20190424 V501
2.2.2 佔用資源 IC ROM RAM Stack Interrupt Other BS83A02C 91%( total 1K ) BS83B04C 49%( total 2K ) 65%(Total 96bytes) (060H-09FH) 71%(Total 128bytes) (080H-0DCH) 53%(Total 288bytes) 4 4 BS83B08C 52%( total 2K ) Bank0 36%(060H-09BH) 4 BS83B12C 67%( total 2K ) BS83B16C 69%( total 2K ) Bank1 75%(080H-0E0H) 42%(Total 512bytes) Bank0 30%(080H-0A7H) Bank1 65%(080H-0D4H) Bank2 75%(080H-0E0H) 56%(Total 512bytes) Bank0 39%(080H-0B2H) Bank1 87%(080H-0F0H) Bank2 100%(080H-0FFH) 79%(Total 512bytes) Bank0 72%(080H-0B2H) 4 4 BS83B24C 51%( total 3K ) Bank1 93%(080H-0F8H) 4 Bank2 75%(080H-0E0H) Bank3 75%(080H-0E0H) 85%(Total 768bytes) Bank0 44%(080H-0B9H) Bank1 93%(080H-0F8H) BS83C40C 51%( total 4K ) Bank2 100%(080H-0FFH) 4 Bank3 100%(080H-0FFH) Bank4 100%(080H-0FFH) Bank5 75%(080H-0E0H) 53%(Total 288bytes) BS84B08C 35%( total 3K ) Bank0 21%(080H-0A3H) 4 BS84C12C 28%( total 4K ) Bank1 93%(080H-0F8H) 42%(Total 512bytes) Bank0 30%(080H-0A7H) Bank1 65%(080H-0D4H) Bank2 75%(080H-0E0H) 40%(Total 384bytes) BS86B08C 26%( total 4K ) Bank0 27%(080H-0A3H) 4 Bank1 93%(080H-0F8H) Time Base MP1;IAR1; Touch Key MP0 ;IAR0 Time Base MP1;IAR1; Touch Key MP0 ;IAR0 Time Base Touch Key MP1;IAR1; MP0 ;IAR0 MP1;IAR1; Time Base MP0 ;IAR0 Touch Key MP1;IAR1; Time Base MP0 ;IAR0 Touch Key MP1;IAR1; MP0 ;IAR0 Time Base Touch Key MP1;IAR1; MP0 ;IAR0 Time Base Touch Key Time Base Touch Key MP1;IAR1; MP0 ;IAR0 MP1;IAR1; Time Base MP0 ;IAR0 Touch Key 4 Time Base Touch Key MP1L;IAR1; MP0 ;IAR0 BS86D12C 14%( total 8K ) 42%(Total 512bytes) Bank0 30%(080H-0A7H) 4 Time Base MP1L;IAR1; Touch Key MP0 ;IAR0 Page 6 of 19 20190424 V501
Bank1 65%(080H-0D4H) Bank2 70%(080H-0E0H) 44%(Total 768bytes) Bank0 34%(080H-0ACH) BS86D20C 16%( total 4K ) Bank1 78%(080H-0E4H) 4 Bank2 93%(080H-0F8H) Bank3 62%(080H-0D0H) 42%(Total 512bytes) Bank0 30%(080H-0A7H) Bank1 65%(080H-0D4H) Bank2 70%(080H-0E0H) 36%(Total 768bytes) Bank0 32%(080H-0A9H) Bank1 87%(080H-0F0H) Bank2 100%(080H-0FFH) 72%(Total 128bytes) (080H-0DDH) BS86DH12C 14%( total 8K ) BS86E16C 7%( total 16K ) BS45F5930 48%( total 2K ) MP1L;IAR1; MP0 ;IAR0 Time Base 0 Touch Key MP1L;IAR1; Time Base MP0 ;IAR0 Touch Key MP1L;IAR1; Time Base 0 MP0 ;IAR0 Touch Key Time Base MP1;IAR1; Touch Key MP0 ;IAR0 4 4 4 *V501 庫在使用過程需要特別注意: 1、在執行 Touch Key 中斷子程序時會響應其它的中斷(多用一層堆棧),因此在使用 堆棧只有 4 層的 IC 時, USER_PROGRAM 中只使用 1 層堆棧(防止堆棧溢出)。 2、在執行用戶中斷程序時 Touch Key 中斷不會響應,在執行完用戶中斷程序后才會響 應,因此 Touch Key 中斷不會影響客戶中斷程序的功能。 Page 7 of 19 20190424 V501
2.2.3參數介紹 2.2.3.1參數列表 參數 功能 數值範圍 建議值 DebounceTimes 0~15 AutoCalibrationPeriod 自動校準時間設定 0~15 HighSensitive 按鍵去抖設定 高感度設定 2~5 4~8 0 0=關閉 ; 1=開啟 MaximumKeyHoldTime 按鍵最長反應時間 0~15 1~3 FastResponse -- -- -- AutoFrequencyHopping 自動跳頻設定 0=關閉 ; 1=開啟 1 OneKeyActive 單鍵輸出設定 0=關閉 ; 1=開啟 視應用功能設定 PowerSave -- -- -- NoiseProtect 干擾保護設定 0=關閉 ; 1=開啓 0 MovingCalibration MainFreqSelect Key Threshold 動態校正設定 0=正常校正 1=動態校正 觸摸振蕩頻率選擇 0=3M 和 7M 1=3M 和 11M 2=1M 和 3M 10~64(十進制) 觸發閥值 1 默認選擇 3M 和 11M *以上參數均放在 TKS_GLOBE_VARIES.INC 內 ,可手動修改參數值 2.2.3.2參數說明 DebounceTimes 設定去抖次數(值越大,按鍵反應越慢)以 10mS 為單位 (判斷_SCAN_CYCLEF 標誌位)計 l 數一次,每階增加 10 mS。當 DebounceTimes=0 時時間最短,為 40mS-50mS。 AutoCalibrationPeriod 設定校正時間,以 80mS 為單位, 0=80 mS ; 1=160 mS……15=1280 mS 當設 定的校正時間一到,且無按鍵時,即校正一次環境(更新參考值)。 HighSensitive 設定感度高低 設為 0 時: 一般感度。 設為 1 時: 高感度。 MaximumKeyHoldTime 設定最長動作時間,以 4 秒為單位,計算最長動作時間限制 0=關閉此功能;1=4 秒……15=60 秒。 Page 8 of 19 20190424 V501
分享到:
收藏