Holtek HT32 MCU Touch Key Library
Inleiding
Die HT32-aanraaksleutelbiblioteek wat deur Best Solution ontwikkel is, is 'n biblioteek wat al die aanraaksleutel onderliggende bestuurderbiblioteek in die MCU integreer files. Die biblioteek het die aanraakverwante MCU-hardeware vooraf gekonfigureer, en bied intuïtiewe en buigsame aanraaksleutelsensitiwiteitinstellings, terwyl algemene funksies soos sleutelopsporing en kragbesparende slaapmodusse geïntegreer word. Die gebruik van die HT32-aanraaksleutelbiblioteek vergemaklik die gebruik van die MCU-aanraakfunksies, wat gebruikers in staat stel om vinnig te begin en die ontwikkelingsperiode te verminder. Hierdie dokument sal die omgewingsopset en biblioteekgebruik in detail beskryf.
Omgewingskonfigurasie
Verkry HT32 Touch Key Library
Kontak Best Solution se FAE of verwys na sy webwebwerf: http://www.bestsolution.com.tw/EN/
Of laai die biblioteek by die Holtek af webwebwerf: https://www.holtek.com
Verkry HT32-firmware-biblioteek
Verwys na die volgende skakel om vinnig die firmware-biblioteek te bekom: https://www.holtek.com/productdetail/-/vg/HT32F54231_41_43_53
Maak die skakel oop, kies die Dokumente-opsie soos in Figuur 1 getoon, waar die rooi blokkie die ligging van die saamgeperste HT32 aandui files. Let daarop dat slegs die firmware-biblioteek van weergawe v022 of hoër die HT32-raaksleutelbiblioteek ondersteun.
Keil-projekkonfigurasie
- Die gebruiker se rekenaar moet die Keil-ontwikkelingsinstrument geïnstalleer hê.
- Pak die firmware-biblioteek uit. Die files word gelys soos getoon in Figuur 2. Klik op Holtek.HT32_DFP.latest om dit te installeer, waarna die installasie-voltooiingsskerm, soos in Figuur 3 getoon, sal verskyn.
- Pak die HT32-aanraaksleutelbiblioteek uit wat twee dopgehou insluit, bvample en biblioteek.
- Kopieer die eksample- en biblioteekvouers na die HT32_STD_xxxxx_FWLib_v022_XXXX-lêergids.
- Voer ..\example\TouchKey\TouchKey_LIB\_CreateProject.bat (Figuur 6).
- 'n Koppelvlak, soos in Figuur 7 getoon, sal verskyn. Voer die nommer in wat ooreenstem met die gebruiker se IDE, waarna 'n "*" teken voor die geselekteerde IDE sal verskyn, soos getoon in Figuur 8. Voer "N" in om na die volgende stap te gaan.
- Soos hieronder getoon, voer "*" in om projekte vir alle IC-tipes te skep of voer die IC-naam in om 'n projek vir die geselekteerde IC te skep.
- Nadat u stappe 1~7 voltooi het, soos in Figuur 11 getoon, kies die gewenste IC-projek soos Project_54xxx.uvprojx uit die ..\example\TouchKey\TouchKey_LIB\MDK_ARMv5\ pad.
Let wel dat slegs die MCU met die grootste hulpbronne in elke reeks gebruik word om die projek te skep. Byvoorbeeldample, om die HT32F54231 te gebruik, moet gebruikers die HT32F54241-projek kies.
Oorwegings
Aangesien die aanraaksleutelprogram die slaaptoestand kan betree, is dit nodig om die projek in te stel om aan te skakel, anders sal dit nie beskikbaar wees vir programmering nie. Die instellingstappe is soos volg.
- Stap 1: Klik op die knoppie in die Keil5-nutsdingkieslys, soos hieronder getoon.
- Stap 2: Kies Ontfout -> Instellings.
- Stap 3: Kies "onder Herstel" in die Connect-veld.
Biblioteek Files Beskrywing
Biblioteek Gebruikte Hulpbronne
Keil-projek | Bruikbare IC | ROM/RAM Hulpbronne | Gebruikte IP | Maks. Aantal sleutels |
HT32F54241 | HT32F54241 HT32F54231 | 7148B / 2256B | Raak sleutel
BFTM0 RTC |
24 |
HT32F54253 | HT32F54243 HT32F54253 | 7140B / 2528B | Raak sleutel BFTM0
RTC |
28 |
- Die RTC word gebruik om MCU uit die slaaptoestand wakker te maak en word as tydbasis vir slaaptoestandverwerking gebruik.
- Wanneer die program in die IC gelaai word, sal die Keil bepaal of die ROM- of RAM-grootte oorskry is.
- Vir die spesifieke gebruik van hulpbronne, verwys na die werklike biblioteekweergawe.
Omgewing en File Beskrywing
Die HT32-aanraaksleutelbiblioteek is in die volgende pad geleë. ..\bvample\TouchKey\TouchKey_LIB\MDK_ARMv5\Project_542xx.uvprojx-projek (Figuur15). Nadat die HT32-raaksleutelbiblioteekprojek oopgemaak is, word die hoofskerm as Figuur 16 getoon.
Die relevante files word soos volg beskryf, waaronder die ht32_TouchKey_conf.h en system_ht32f5xxxx_09.c files, ingesluit in die Configuration Wizard. Sien Figuur 17.
File Naam | Beskrywing |
hoof.c | Projek hoofprogram file |
ht32f5xxxx_01_it.c | Onderbreek hoofprogram file |
ht32_TouchKey_Lib_Mx_Keil.lib | Raak beheer biblioteek file |
*ht32_TouchKey_conf.h | Raak beheer parameter file |
ht32_TouchKey.h | Eksterne verklaring definisie file |
ht32_TouchKey_BSconf.h | Onderliggende hoofparameter file (nie aanbeveel om te verander nie) |
ht32_board_config.h | Hardeware definisie file (nie aanbeveel om te verander nie) |
*system_ht32f5xxxx_09.c | Klokbron en stelselklokparameter file |
Configuration Wizard Parameters
- ht32_TouchKey_conf.h Configuration Wizard parameters:
Naam Funksie Kragbesparing Aktiveer die verstek slaapprosedure wat in hoof.c TKL_Hoogsensitief Raak sensitiwiteit instelling: hoë of lae sensitiwiteit; verstek na hoë sensitiwiteit nadat dit geaktiveer is TKL_keyDebounce Sleutel debounce tyd instelling TKL_RefCalTime Kalibrasie tyd. Hoe korter die tyd, hoe meer effektief sal dit wees om omgewingsinmenging te weerstaan, maar dit sal lei tot laer sleutelsensitiwiteite. TKL_MaxOnHoldTime Die maksimum tyd wat die sleutel gedruk word. Die sleutel word outomaties vrygestel nadat dit vir n sekondes gedruk is. KEYn_EN Aktiveer of deaktiveer KEYn Sleuteldrempel KEYn drempelwaarde. Hoe kleiner die waarde, hoe meer sensitief sal die sleutel wees. - system_ht32f5xxxx_09.c Configuration Wizard parameters:
Naam Funksie Aktiveer hoëspoed eksterne kristalossillator – HSE Aktiveer of deaktiveer HSE (eksterne hoëspoed-ossillator) Aktiveer laespoed eksterne kristalossillator – LSE Aktiveer of deaktiveer LSE (eksterne laespoed-ossillator) Aktiveer PLL Aktiveer of deaktiveer PLL PLL Klok Bron Kies klokbron vir PLL SystemCoreClockConfiguration (CK_AHB) Kies klokbron vir stelsel CK_AHB
Beskrywing van Touch Key Lib Interface Funksies
Beskrywing van Kry-funksies
Item | Beskrywing |
Funksie Naam | TKL_Kry_Standby |
Invoerparameter | — |
Terugkeerwaarde | Telwaarde (500~60000) |
Beskrywing | Word gebruik om die afteltellerwaarde te verkry |
Item | Beskrywing |
Funksie Naam | TKL_Get_KeyRCCValue |
Invoerparameter | Sleutelwaarde (0 ~ maksimum sleutelwaarde), frekwensie (0, 1) |
Terugkeerwaarde | Kapasitansiewaarde (0~1023) |
Beskrywing | Word gebruik om die kapasitansiewaarde van die gespesifiseerde sleutel te verkry |
Item | Beskrywing |
Funksie Naam | TKL_GetKeyRef |
Invoerparameter | Sleutelwaarde (0 ~ maksimum sleutelwaarde) |
Terugkeerwaarde | Verwysingswaarde (0~65535) |
Beskrywing | Word gebruik om die verwysingswaarde van die gespesifiseerde sleutel te verkry |
Item | Beskrywing |
Funksie Naam | TKL_GetKeyThreshold |
Invoerparameter | Sleutelwaarde (0 ~ maksimum sleutelwaarde) |
Terugkeerwaarde | Drempelwaarde (0~255) |
Beskrywing | Word gebruik om die drempelwaarde van die gespesifiseerde sleutel te verkry |
Item | Beskrywing |
Funksie Naam | TKL_Get_AllKeyState |
Invoerparameter | — |
Terugkeerwaarde | Sleuteltoestand (32-bis)
BITn staan vir KEYn state Bit0 = 1 beteken dat KEY0 gedruk word, Bit0 = 0 beteken dat KEY0 nie gedruk word nie |
Beskrywing | Word gebruik om alle sleutelstate te verkry |
Beskrywing van Stel funksies
Item | Beskrywing |
Funksie Naam | TKL_Set_KeyThreshold |
Invoerparameter | Sleutelwaarde (0 ~ maksimum sleutelwaarde), drempelwaarde (10~127) |
Terugkeerwaarde | — |
Beskrywing | Word gebruik om die drempelwaarde van die gespesifiseerde sleutel te stel |
Item | Beskrywing |
Funksie Naam | TKL_Stel_Standby |
Invoerparameter | Slaaptyd (500~60000) |
Terugkeerwaarde | — |
Beskrywing | Word gebruik om die aftelteller in te stel (nie aanbeveel om hierdie funksie te gebruik nie) |
Beskrywing van staats- en bevelsfunksies
Item | Beskrywing |
Funksie Naam | TKL_Is_Time |
Invoerparameter | Vooraf ingestelde konstante (kT2mS, kT4mS...kT2048mS) |
Terugkeerwaarde | — |
Beskrywing | Tydvlag vir gebruikersverwysing.
In die volgende example, die program betree die funksie elke 2ms. |
Item | Beskrywing |
Funksie Naam | TKL_Is_AnyKeyPress |
Invoerparameter | — |
Terugkeerwaarde | 1 = een of meer sleutels is geaktiveer; 0 = geen sleutel is geaktiveer nie |
Beskrywing | Word gebruik om die sleuteldrukvlag te verkry |
Item | Beskrywing |
Funksie Naam | TKL_Is_KeyPress |
Invoerparameter | Sleutelwaarde (0 ~ maksimum sleutelwaarde) |
Terugkeerwaarde | 1 = sleutel is geaktiveer; 0 = sleutel is nie geaktiveer nie |
Beskrywing | Word gebruik om die staatsvlag van die gespesifiseerde sleutel te verkry |
Item | Beskrywing |
Funksie Naam | TKL_Is_Aktief |
Invoerparameter | — |
Terugkeerwaarde | 1 = LIB inisialisering is voltooi; 0 = LIB inisialisering is nie voltooi nie |
Beskrywing | Word gebruik om die LIB-inisialiseringstatusvlag te verkry |
Item | Beskrywing |
Funksie Naam | TKL_Is_bystand |
Invoerparameter | — |
Terugkeerwaarde | 1 = toegelaat om in slaaptoestand te gaan; 0 = nie toegelaat om in slaaptoestand te gaan nie |
Beskrywing | Word gebruik om die slaaptoestandvlag te verkry.
*Wanneer 'n waarde van 0 teruggestuur word, kan die ingaan van die slaaptoestand 'n onverwagte toestand tot gevolg hê. |
Item | Beskrywing |
Funksie Naam | TKL_Is_KeyScanCycle |
Invoerparameter | — |
Terugkeerwaarde | 1 = skandering is voltooi; 0 = skandeer tans |
Beskrywing | Word gebruik om die skanderingvlag te verkry |
Item | Beskrywing |
Funksie Naam | TKL_Herstel |
Invoerparameter | — |
Terugkeerwaarde | — |
Beskrywing | Word gebruik om LIB te dwing om 'n terugstelaksie uit te voer.
*Vlae wat deur LIB en RAM gebruik word, sal geïnisialiseer word. *Parameters en AFIO is uitgesluit. |
Beskrywing van Touch Key Lib Inisialiseringsfunksies
Hierdie funksies is geleë in hoof.c. Dit word nie aanbeveel om hul inhoud te verander nie.
Naam | Funksie |
GPIO_Configuration() | I/O-poortkonfigurasies |
RTC_Configuration() | Raaksleutels word deur die RTC wakker gemaak |
BFTM_Configuration() | Raaksleutelbiblioteektydbasisse word deur BFTM geïmplementeer |
TKL_Configuration() | Raak sleutelkonfigurasies |
Sleutelstaatnavraag
Soos hieronder getoon, bevat die hoofprogram 'n raaksleutel, bvample wat nie by verstek geaktiveer sal word nie. Om hierdie funksie te aktiveer, wysig (0) na #if na (1).
Slaapmodus Beskrywing
- In ht32_TouchKey_conf.h, kies PowerSave om die slaapmodusse te aktiveer.
- Nadat die slaapmodusse geaktiveer is, sal die raaksleutels die slaaptoestand betree as die sleutels vir 'n sekere tydperk geen aanrakingstoestande ervaar het nie.
- 'n Bystandtydtellingfunksie word gebruik om af te tel, die huidige tyd word verkry deur TKL_Get_Standby en die tydparameter word met TKL_Set_Standby gestel.
- Daar is drie slaapmodus-opsies.
Modus Beskrywing GEBRUIK_SLEEP_MODE Gaan die slaapmodus aan GEBRUIK_DEEP_SLEEP1_MODE Voer diepe slaap1-modus in GEBRUIK_DEEP_SLEEP2_MODE Voer diepe slaap2-modus in - Soos hieronder getoon, stel die vereiste slaapmodus in met "#define" in die hoof file.
Gevolgtrekking
Hierdie dokument het instruksies verskaf vir die opstel van die hele HT32-aanraaksleutel-ontwikkelingsomgewing, wat gebruikers help om vinnig te begin. Daarbenewens is die hulpbronne wat deur die biblioteek gebruik word, sowel as verskeie funksies en parameters, in detail verduidelik, wat 'n makliker ontwikkelingsproses moontlik maak.
Verwysingsmateriaal
Vir meer besonderhede, verwys na die Holtek webwebwerf: www.holtek.com of raadpleeg die Beste Oplossing webwebwerf: http://www.bestsolution.com.tw/EN/
Weergawes en wysigingsinligting:
Datum | Skrywer | Loslaat | Beskrywing |
2022.03.16 | 谢东霖、梁德浩 | V1.00 | Eerste weergawe |
Disclaimer
Alle inligting, handelsmerke, logo's, grafika, video's, oudiosnitte, skakels en ander items wat hierop verskyn webwebwerf ('Inligting') is slegs vir verwysing en is onderhewig aan verandering te eniger tyd sonder vooraf kennisgewing en volgens die diskresie van Holtek Semiconductor Inc. en sy verwante maatskappye (hierna 'Holtek', 'die maatskappy', 'ons', ' ons' of 'ons'). Terwyl Holtek poog om die akkuraatheid van die inligting hieroor te verseker webwebwerf, word geen uitdruklike of geïmpliseerde waarborg deur Holtek gegee vir die akkuraatheid van die inligting nie. Holtek sal geen verantwoordelikheid vir enige onjuistheid of lekkasie dra nie.
Holtek sal nie aanspreeklik wees vir enige skade (insluitend maar nie beperk nie tot rekenaarvirus, stelselprobleme of dataverlies) hoegenaamd wat ontstaan met die gebruik van of in verband met die gebruik van hierdie webwebwerf deur enige party. Daar kan skakels in hierdie area wees, wat jou toelaat om die webwebwerwe van ander maatskappye. Hierdie webwebwerwe word nie deur Holtek beheer nie. Holtek sal geen verantwoordelikheid en geen waarborg dra vir enige inligting wat op sulke webwerwe vertoon word nie. Hiperskakels na ander webwebwerwe is op eie risiko.
Beperking van aanspreeklikheid
In geen geval sal Holtek Beperk teenoor enige ander party aanspreeklik wees vir enige verlies of skade hoegenaamd of hoe ook al direk of indirek veroorsaak in verband met jou toegang tot of gebruik van hierdie webwebwerf, die inhoud daarop of enige goedere, materiaal of dienste.
Beheersende wet
Die vrywaring vervat in die webwebwerf sal beheer word deur en geïnterpreteer word in ooreenstemming met die wette van die Republiek van China. Gebruikers sal hulle onderwerp aan die nie-eksklusiewe jurisdiksie van die howe in die Republiek van China.
Opdatering van vrywaring
Holtek behou die reg voor om die Vrywaring te eniger tyd by te werk met of sonder vooraf kennisgewing, alle veranderinge is onmiddellik van krag nadat dit aan die webwebwerf.
Dokumente / Hulpbronne
![]() |
Holtek HT32 MCU Touch Key Library [pdf] Gebruikersgids HT32, MCU Touch Key Library, HT32 MCU Touch Key Library |