Дастури истифодабарии HOLTEK HT32 MCU UART
Муқаддима
Қабулкунандаи универсалии асинхронӣ/интиқолдиҳанда - UART интерфейси интиқоли силсилавии васеъ истифодашаванда мебошад, ки интиқоли чандири асинхронии пурраи дуплексии маълумотро таъмин мекунад. Рамзи замимаи "Module_UART", ки дар ин ёддошт пешниҳод шудааст, танаффусҳои TX/RX-ро бо буферҳои ҳалқаи нармафзор барои амалӣ кардани функсияҳои оддии интиқол/қабули UART тавассути API-ҳо истифода мебарад, ки вазифаҳои марбути онҳо дар зер тавсиф шудаанд. Ин тамоми раванди интиқоли маълумотро содда мекунад ва ба корбарон имкон медиҳад, ки барномаҳои иртиботии UART-ро зуд дарк кунанд ва татбиқ кунанд.
- Функсияҳои интиқол/қабул: хондани байт, навиштани байт, хондани буфер, навиштани буфер ва ғайра.
- Функсияҳои вазъ: дарозии буфер, ҳолати TX ва ғайраро гиред.
Ин ҳуҷҷат аввал протоколи иртиботи UART-ро муаррифӣ мекунад, ки ба корбарон барои беҳтар фаҳмидани муоширати UART аз принсип то татбиқ кӯмак мекунад. Пас аз он зеркашӣ ва омода кардани захираҳои лозим барои коди барнома, аз ҷумла китобхонаи нармафзор, зеркашии коди барнома, file ва конфигуратсияи директория, инчунин муқаддима ба воситаи нармафзори терминал, ки дар қайди барнома истифода мешавад. Дар боби Тавсифи функсионалӣ сохтори феҳристи коди барнома, танзимоти параметрҳо ва тавсифи API ҷорӣ карда мешавад. Истифодаи API бо истифода аз рамзи барномаи "Module_UART" тавсиф карда мешавад ва истеъмоли захираҳои Flash/RAM, ки барои APIҳо заруранд, низ рӯйхат хоҳанд шуд. Боби Дастурамал оид ба истифода ба корбар тавассути қадамҳои омодасозии муҳити зист, ҷамъоварӣ ва санҷиш барои тасдиқи дурустии коди барнома роҳнамоӣ мекунад. Он гоҳ дастурҳо медиҳад, ки чӣ тавр ба лоиҳаҳои корбар ҳамгиро кардани APIҳо ва дар ниҳоят барои тағирот ва мушкилоти умумӣ, ки дучор мешаванд, маълумотнома пешниҳод мекунад.
Ихтисороти истифодашуда:
- UART: Қабулкунандаи универсалии асинхронӣ / интиқолдиҳанда
- API: Интерфейси барномасозии барномаҳо
- LSB: Камтарин бит
- MSB: Бит муҳимтарин
- Компютер: Компютери шахсӣ
- СК: Маҷмӯи ибтидоӣ, Шӯрои таҳияи HT32
- IDE: Муҳити ҳамгирошудаи рушд
Протоколи коммуникатсионӣ UART
UART як намуди иртиботи пайдарпайи интерфейсест, ки дар интиқолдиҳандаи худ табдили параллелӣ ба силсилаи додаҳоро амалӣ мекунад ва сипас бо қабулкунаки шабеҳ пайваста муошират мекунад. Пас аз он, қабулкунанда пас аз қабули додаҳо табдили силсилавии маълумотро ба параллел иҷро мекунад. Дар расми 1 диаграммаи схематикии алоқаи пайдарпай нишон дода шудааст, ки чӣ гуна маълумот бо тартиби бит интиқол дода мешавад. Аз ин рӯ, барои иртиботи дуҷонибаи байни интиқолдиҳанда ва қабулкунанда танҳо ду сим, TX ва RX лозим аст, ки маълумотро ба таври пайдарпай байни ҳамдигар интиқол диҳанд. TX пин аст, ки дар он UART маълумоти пайдарпайро интиқол медиҳад ва ба пини RX-и қабулкунанда пайваст мешавад. Аз ин рӯ, дастгоҳҳои интиқолдиҳанда ва қабулкунанда бояд пинҳои TX ва RX-и худро ба ҳам пайваст кунанд, то иртиботи дуҷонибаи UART-ро иҷро кунанд, тавре ки дар Расм 2.
Расми 1. Диаграммаи алоқаи силсилавӣ
Расми 2. Диаграммаи схемаи UART
Ҳангоми иртиботи силсилавии UART интиқоли маълумот асинхронӣ аст. Ин маънои онро дорад, ки байни интиқолдиҳанда ва қабулкунанда ягон соат ё дигар сигнали ҳамоҳангсозӣ вуҷуд надорад. Дар ин ҷо суръати интиқол истифода мешавад, ки суръати интиқол/қабули маълумот мебошад ва аз ҷониби ҳарду ҷониб пеш аз интиқоли додаҳо муқаррар карда мешавад. Илова бар ин, битҳои махсус ба монанди битҳои оғоз ва қатъ ба ибтидо ва охири бастаи додаҳо илова карда мешаванд, то бастаи пурраи маълумоти UART-ро ташкил кунанд. Дар расми 3 сохтори бастаи додаҳои UART нишон дода шудааст, дар сурате, ки дар расми 4 маҷмӯи додаҳои 8-битии UART бе бит паритет нишон дода шудааст.
Расми 3. Сохтори бастаи маълумоти UART
Тасвири 4. Формат бастаи маълумотҳои UART 8-бит
Ҳар як қисми бастаи маълумоти UART бо тартиби дар зер овардашуда оварда шудааст.
- Бити оғоз: Ин оғози бастаи маълумотро нишон медиҳад. PIN UART TX одатан пеш аз оғози интиқол дар сатҳи баланди мантиқӣ боқӣ мемонад. Агар интиқоли маълумот оғоз шавад, интиқолдиҳандаи UART пинҳои TX-ро аз баланд ба паст, яъне аз 1 то 0 мекашад ва сипас онро барои як давраи соат нигоҳ медорад. Қабулкунаки UART хондани маълумотро вақте оғоз мекунад, ки гузариши баланд ба паст дар пин RX ошкор шудааст.
- Маълумот: Ин маълумоти воқеии интиқолшуда бо дарозии маълумот аз 7, 8 ё 9 бит мебошад. Маълумот одатан бо LSB аввал интиқол дода мешавад.
- Бити паритет: Шумораи мантиқи "1" дар додаҳо барои муайян кардани он, ки оё ягон маълумот ҳангоми интиқол тағир ёфтааст ё не. Барои баробарии ҷуфт, шумораи умумии мантиқи "1" дар додаҳо бояд рақами ҷуфт бошад, баръакс, шумораи умумии мантиқи "1" дар додаҳо барои паритети тоқ рақами тоқ бошад.
- Бити қатъ: Ин ба анҷом расидани бастаи додаҳо ишора мекунад, ки дар он интиқолдиҳандаи UART пинҳои TX-ро аз паст ба баланд, яъне аз 0 то 1 кашида, сипас онро дар муддати 1 ё 2-бит нигоҳ медорад.
Тавре ки қаблан зикр гардид, азбаски дар схемаи UART ягон сигнали соат вуҷуд надорад, ҳамон суръати интиқол/қабули маълумот, ки бо суръати интиқол маълум аст, бояд байни интиқолдиҳанда ва қабулкунанда муайян карда шавад, то интиқоли бе хатогӣ амалӣ карда шавад. Суръати интиқол аз рӯи шумораи битҳои интиқолшуда дар як сония бо бит (бит дар як сония) муайян карда мешавад. Баъзе суръати интиқоли стандартӣ ва маъмулан истифодашаванда 4800 бит / с, 9600 бит / с, 19200 бит / сек, 115200 бит ва ғайра мебошанд. Вақти мувофиқ барои интиқоли як бит маълумот дар зер нишон дода шудааст.
Ҷадвали 1. Меъёри интиқол нисбат ба вақти интиқоли 1-бит
Меъёри интиқол | Интиқоли 1-бит Вақт |
4800б/сек | 208.33мкс |
9600б/сек | 104.16мкс |
19200б/сек | 52.08мкс |
115200б/сек | 8.68мкс |
Зеркашӣ ва омодасозии захираҳо
Дар ин боб рамзи барнома ва асбоби нармафзори истифодашуда, инчунин тарзи танзим кардани директория ва file роҳ.
Китобхонаи нармафзор
Аввалан, боварӣ ҳосил кунед, ки китобхонаи нармафзори Holtek HT32 пеш аз истифодаи рамзи барнома зеркашӣ карда шудааст. Истиноди зеркашӣ дар зер нишон дода шудааст. Дар ин ҷо ду вариант вуҷуд дорад, HT32_M0p_Vyyyymmdd.zip барои силсилаи HT32F5xxxx ва HT32_M3_Vyyyymmdd.zip барои силсилаи HT32F1xxxx. Зеркашӣ ва кушодани файли дилхоҳ file.
Зип file дорои якчанд ҷузвдонҳо, ки онҳоро метавон ҳамчун Ҳуҷҷат, Китобхонаи нармафзор, Асбобҳо ва дигар ашё тасниф кард, ки роҳи ҷойгиркунии онҳо дар расми 5 нишон дода шудааст. Китобхонаи нармафзори HT32 zip file бо а file номи HT32_STD_xxxxx_FWLib_Vm.n.r_s.zip дар папкаи Firmware_Library ҷойгир аст.
Тасвири 5. HT32_M0p_Vyyyymmdd.zip Мундариҷа
Рамзи ариза
Рамзи барномаро аз истиноди зерин зеркашӣ кунед. Рамзи барнома дар почта баста шудааст file бо а file номи HT32_APPFW_xxxxx_APPCODENAME_Vm.n.r_s.zip. Бинед Расми 6 барои file конвенсияҳои номгузорӣ.
Расми 6. Рамзи ариза File Муқаддима ном
Истиноди зеркашӣ: https://mcu.holtek.com.tw/ht32/app.fw/Module_UART/
File ва Конфигуратсияи директория
Азбаски рамзи барнома китобхонаи нармафзори HT32-ро дар бар намегирад files, рамзи барнома ва китобхонаи нармафзор кушода шудааст files бояд пеш аз оғози тартибдиҳӣ дар роҳи дуруст ҷойгир карда шавад. Рамзи барнома zip file одатан дорои як ё якчанд ҷузвдонҳо, ба монанди барнома ва китобхона, тавре ки дар расми 7 нишон дода шудааст. file конфигуратсияи роҳ, тавре ки дар расми 8 нишон дода шудааст. Интихобан, рамзи барнома ва китобхонаи нармафзори HT32-ро ҳамзамон ба ҳамон роҳ кушоед, то ба натиҷаҳои конфигуратсияи якхела ноил шавед.
Расми 7. Мундариҷаи HT32_APPFW_xxxxx_APPCODENAME_Vm.n.r_s.zip
Расми 8. Роҳи декомпрессия
Нармафзори терминал
Рамзи барнома метавонад паёмҳоро тавассути порти COM интиқол диҳад, то интихоби функсия ё намоиши вазъро амалӣ кунад. Ин аз ҷониби мизбон талаб мекунад, ки нармафзори терминалро пешакӣ насб кунад. Истифодабарандагон метавонанд нармафзори мувофиқи пайвастшавиро интихоб кунанд ё нармафзори ройгони литсензиониро, аз қабили Tera Term истифода баранд. Дар коди барнома, канали UART бо дарозии калимаи 8-бит, бе паритет, 1 қатъ бит ва суръати интиқоли 115200бит / сония танзим карда шудааст.
Тавсифи функсионалӣ
Дар ин боб тавсифи функсионалии коди барнома, аз ҷумла маълумот дар бораи сохтори директория, меъмории API, тавсифи танзимот ва ғ.
Сохтори директория
Рамзи барнома file дорои ҷузвдони барнома мебошад. Қабати навбатӣ папкаи "Module_UART" мебошад, ки дорои ду барномаи барномавӣ мебошад, "UART_Module_Example" ва "UART_Bridge". дахлдор fileҳо номбар шудаанд ва дар зер тавсиф шудаанд.
Љадвали 2. Сохтори Феҳристи Рамзи Ариза
Папка / File Ном | Тавсифи |
\\application\Module_UART\UART_Module_Example*1 | |
_CreateProject.bat | Скриптҳои дастаҷамъӣ барои эҷоди лоиҳа files |
_ProjectSource.ini | Оғозсозӣ file барои илова кардани рамзи сарчашма ба лоиҳаҳо |
ht32_board_config.h | Ташкил кардан file вобаста ба IC периферии I/O таъин |
ht32fxxxxx_01_it.c | Барномаи хидматрасонии қатъ file |
асосӣ.c | Рамзи асосии барнома |
\\application\Module_UART\UART_Bridge*2 | |
_CreateProject.bat | Скриптҳои дастаҷамъӣ барои эҷоди лоиҳа files |
_ProjectSource.ini | Оғозсозӣ file барои илова кардани рамзи сарчашма ба лоиҳаҳо |
ht32_board_config.h | Ташкил кардан file вобаста ба IC периферии I/O таъин |
ht32fxxxxx_01_it.c | Барномаи хидматрасонии қатъ file |
асосӣ.c | Рамзи сарчашмаи барномаи асосӣ |
uart_bridge.h uart_bridge.c | Сарлавҳаи пули UART file ва рамзи сарчашма file |
\\ utilities\ миёнаравӣ | |
uart_module.h*3 uart_module.c*3 | Сарлавҳаи API file ва рамзи сарчашма file |
\\ коммуналӣ \ умумӣ | |
ringbuffer.h ring_buffer.c | Сарлавҳаи буфери ҳалқаи нармафзор file ва рамзи сарчашма file |
Шарҳ:
- Дар "UART_Module_Example" рамзи барнома, амалиёти хондан ва навиштани API ба таври такрорӣ иҷро карда мешавад, ба "API Usage Ex муроҷиат кунед.amples" барои тафсилоти бештар.
- Дар рамзи барномаи "UART_Bridge" ду канали UART, UART CH0 ва UART CH1 фаъол карда мешаванд ва протоколи иртиботи фармоишӣ тавассути сохторҳои COMMAND байни ду дастгоҳи UART амалӣ карда мешавад. Барои маълумоти иловагӣ, ба "API Usage Examples" фасли.
- Рамзи барнома бояд uart_module.c/h -ро истифода барад files, ки талаботи версияи китобхонаи нармафзорро доранд. Талабот метавонад вобаста ба навсозӣ вақт ба вақт тағир ёбад. Барои тасдиқи талаботи ҷории версияи китобхонаи нармафзор, ба мундариҷаи санҷиши вобастагӣ тавассути ҷустуҷӯи калимаи калидии "Тафтиши вобастагӣ" дар main.c муроҷиат кунед. file. Агар версияи китобхонаи нармафзор ба талабот ҷавобгӯ набошад, версияи навтаринро аз истиноде, ки дар бахши "Китобхонаи нармафзор" оварда шудааст, зеркашӣ кунед.
Архитектураи API
Ҳар як API як параметри муҳими CH дорад, ки канали UART мебошад. Ин муайян мекунад, ки кадом канали UART бояд назорат карда шавад. Дар айни замон то чор канали UART дастгирӣ карда мешавад ва аз ин рӯ чаҳор рамзи доимӣ ба таври зерин муайян карда мешаванд. Инҳо ҳамчун параметри CH истифода мешаванд, ки APIҳоро барои назорат асос медиҳанд.
- UARTM_CH0: параметри вуруд - назорат ё танзим кардани UART CH0
- UARTM_CH1: параметри вуруд - назорат ё танзим кардани UART CH1
- UARTM_CH2: параметри вуруд - назорат ё танзим кардани UART CH2
- UARTM_CH3: параметри вуруд - назорат ё танзим кардани UART CH3
Агар танҳо як канали UART истифода шавад, фазои хотира беҳуда нахоҳад шуд. Сабаб дар он аст, ки шумораи каналҳои дастгиришавандаи UART метавонад муқаррар карда шавад ва рамзи канали истифоданашудаи UART аз ҷониби протсессор барои зиёд кардани фазои хотираи дастрас нест карда мешавад. Архитектураи API дар нишон дода шудааст Расми 9.
Расми 9. Диаграммаи блоки меъмории API
Ҳар як API аз чаҳор гурӯҳи танзимот ё назорати марбут ба канали UART иборат аст, то корбарон танҳо бояд параметри CH-ро ворид кунанд. Барои конфигуратсияи API-и мувофиқ, танҳо дорои ҷадвали параметрҳои асосии конфигуратсияи UART бо шакли сохтор, USART_InitTypeDef лозим аст. API конфигуратсияи асосии UART-ро мувофиқи мундариҷаи параметрҳои ҷадвал амалӣ хоҳад кард. Барои ҷадвали сохтори конфигуратсияи асосии UART ба бахши "Тасвири API" муроҷиат кунед.
uart_module.c/.h fileс танҳо қатъи (CHx_IRQ) ва ҷадвали ҳолати (CHx Status) ҳар як канали UART-ро дар бар мегирад, дар ҳоле ки тамоми танзимоти барои иртиботи UART заруриро ht32_board_config.h таъмин мекунанд. Параметрҳои марбут ба сахтафзор дар ht32_board_config.h file дар чадвали зер нишон дода шудаанд. Тафсилоти бештар дар бахши "Тасвири танзимот" оварда шудааст.
Параметрҳои марбут ба сахтафзор дар ht32_board_config.h дорои танзимоти I/O ва танзимоти бандари физикии UART мебошанд, ба таври зерин.
Љадвали 3. Аломатњои таъриф дар ht32_board_config.h
Рамз | Тавсифи |
HTCFG_UARTM_CH0 | Номи порти физикии UART; Мисолample: UART0, UART1… |
HTCFG_UARTM0_TX_GPIO_PORT | Номи порти TX-ро барои CH0 муайян мекунад; Мисолample: A, B, C… |
HTCFG_UARTM0_TX_GPIO_PIN | Рақами PIN-и TX-ро барои CH0 муайян мекунад; Мисолample: 0~15 |
HTCFG_UARTM0_RX_GPIO_PORT | Номи порти RX-ро барои CH0 муайян мекунад; Мисолample: A, B, C… |
HTCFG_UARTM0_RX_GPIO_PIN | Рақами PIN-и TX-ро барои CH0 муайян мекунад; Мисолample: 0~15 |
HTCFG_UARTM0_TX_BUFFER_SIZE | Андозаи буфери TX-ро барои CH0 муайян мекунад; МисолampНарх: 128 |
HTCFG_UARTM0_RX_BUFFER_SIZE | Андозаи буфери RX-ро барои CH0 муайян мекунад; МисолampНарх: 128 |
Барои тағир додани конфигуратсияи канали UART AFIO, ба ҷадвали иттилоотии дастгоҳ муроҷиат кунед. Дар айни замон танҳо таърифҳои вуруд/чорӣ барои UART CH0 эътибор пайдо мекунанд, зеро танҳо UART CH0 дар ht32_board_config.h танзим шудааст. Барои илова кардани UART CH1~3, таърифҳои воридот ва баромади онҳо бояд бо истинод ба таърифи UART CH0 ё бо истинод ба бахши "Танзимоти тағирот ва саволҳои FAQ" анҷом дода шаванд.
Се хусусиятҳои асосии меъмории API мавҷуданд:
- То чор канали UART дастгирӣ карда мешавад. Параметрҳои вуруди онҳо UARTM_CH0, UARTM_CH1, UARTM_CH2 ва UARTM_CH3 мебошанд.
- Шумораи каналҳои UART метавонад муқаррар карда шавад ва каналҳои истифоданашуда фазои хотираи мавҷударо кам намекунанд.
- Ҳама танзимоти UART ва таърифҳои I/O аз APIҳо комилан ҷудо карда шудаанд. Ин роҳати идоракунии танзими арзишҳоро зиёд мекунад ва имкони танзимоти нодуруст ё гумшударо кам мекунад.
Тавсифи танзимот
Ин бахш танзимоти параметрҳоро дар ht32_board_config.h ва uart_module.h муаррифӣ мекунад. files.
- ht32_board_config.h: Ин file барои таърифҳои пин ва танзимоти дахлдори тахтаи таҳия истифода мешавад, ки канали UART IP (UART0, UART1, USART0…), ки аз ҷониби маҷмӯаи Starter (SK) истифода мешавад, маконҳои мувофиқи пинҳои TX/RX ва андозаи буфери TX/RX иборат аст. Тасвири 10 мундариҷаи танзимоти маҷмӯаи Starter HT32F52352-ро нишон медиҳад. Вобаста ба ҳамгироии функсионалии таҳия, корбарон метавонанд ба бахши "Таъиноти PIN" -и варақаи маълумоти дастгоҳи истифодашуда барои татбиқи таърифҳои пин муроҷиат кунанд. Тафсилоти бештар дар бораи танзими тағирот дар бахши "Танзимоти тағирот ва FAQs" тавсиф карда мешавад.
Расми 10. Танзимоти ht32_board_config.h (HT32F52352)
- uart_module.h: Ин сарлавҳаи API аст file аз ҷониби рамзи барнома истифода мешавад, ки танзимоти мувофиқи пешфарз, таърифҳои функсия ва ғайраҳоро дар бар мегирад. Тавре ки дар расми 11 нишон дода шудааст, мундариҷаи танзимоти пешфарзро метавон тавассути конфигуратсияҳои беруна, ба монанди танзимот дар ht32_board_config.h баргардонад. file.
Тасвири 11. Танзимоти пешфарз дар uart_module.h
Тавсифи API
- Тавсифи навъи маълумоти коди барнома.
- USART_InitTypeDef
Ин сохтори асосии конфигуратсияи UART мебошад, ки аз конфигуратсияҳои BaudRate, WordLength, StopBits, Parity ва Mode иборат аст, ки дар зер нишон дода шудааст.Тағйирёбанда Ном Навъи Тавсифи USART_Rate u32 Меъёри интиқоли UART USART_Length u16 Дарозии калимаи муоширати UART: 7, 8 ё 9 бит USART_StopBits u16 Дарозии бит қатъи алоқаи UART: 1 ё 2 бит USART_Parity u16 Паритети муоширати UART: ҷуфт, тоқ, аломат, фосила ё не паритет USART_Мод u16 Усули алоқаи UART; APIҳо танҳо ҳолати муқаррариро дастгирӣ мекунанд
- USART_InitTypeDef
- Пеш аз истифодаи функсияҳои API, конфигуратсияи асосии UART-ро дар барномаи асосӣ анҷом диҳед. Конфигуратсияи асосии UART барои ин рамзи барнома дар расми 12 нишон дода шудааст. Дар ин ҷо суръати интиқол 115200бит/с, дарозии калима 8-бит, дарозии қатъи бит 1-бит аст ва паритет вуҷуд надорад.
Расми 12. Конфигуратсияи асосии UART
- Тасвири 13 функсияҳои API-ро нишон медиҳад, ки дар uart_module.h эълон шудаанд file. Ҷадвалҳои зерин функсия, параметрҳои вуруд ва истифодаи функсияҳои API-ро шарҳ медиҳанд.
Тасвири 13. Эъломияҳои Функсияи API дар uart_module.h
Ном | Void UARTM_Init(u32 CH, USART_InitTypeDef *pUART_Init, u32 uRxTimeOutValue) | |
Функсия | Оғозсозии модули UART | |
Вуруд | CH | Канали UART |
pUART_Init | Нишондиҳандаи сохтори конфигуратсияи асосии UART | |
uRxTimeOutValue | Қимати вақти фарорасии UART RX FIFO. Вақте ки RX FIFO маълумоти нав мегирад, ҳисобкунак аз нав барқарор ва аз нав оғоз мешавад. Пас аз он ки ҳисобкунак ба арзиши пешакии вақт-аут мерасад ва таваққуфи мувофиқи вақт-аут фаъол карда мешавад, қатъи вақт-аут тавлид мешавад. | |
Истифода | UARTM_Init(UARTM_CH0, &USART_InitStructure, 40);//конфигуратсияи асосии UART-ро иҷро кунед//Барои конфигуратсияи USART_InitStructure ба расми 12 нигаред. |
Ном | u32 UARTM_WriteByte(u32 CH, u8 uData) | |
Функсия | Модули UART амалиёти навиштани байт (TX) | |
Вуруд | CH | Канали UART |
uData | Маълумоте, ки бояд навишта шавад | |
Натиҷа | МУВАФФАКИЯТ | Муваффак |
ХАТО | Муваффақ шуд | |
Истифода | UARTM_WriteByte(UARTM_CH0, 'A'); //UART 1 байт менависад - 'A' |
Ном | u32 UARTM_Write(u32 CH, u8 *pBuffer, u32 uLength) | |
Функсия | Амали навиштани модули UART (TX) | |
Вуруд | CH | Канали UART |
pBuffer | Нишондиҳандаи буферӣ | |
uLength | Дарозии маълумоте, ки бояд навишта шавад | |
Натиҷа | МУВАФФАКИЯТ | Муваффак |
ХАТО | Муваффақ шуд | |
Истифода | u8 Test[] = "Ин озмоиш аст!\r\n"; UARTM_Write(UARTM_CH0, Санҷиш, андозаи(Тест) -1); //UART маълумоти pBuffer -ро менависад |
Ном | u32 UARTM_ReadByte(u32 CH, u8 *pData) | |
Функсия | Амали хониши байтҳои модули UART (RX) | |
Вуруд | CH | Канали UART |
pData | Суроға барои ҷойгир кардани маълумоти хондан | |
Натиҷа | МУВАФФАКИЯТ | Муваффак |
ХАТО | Муваффақ нашуд (маълумот нест) | |
Истифода | u8 TempData; агар (UARTM_ReadByte(UARTM_CH0, &TempData) == SUCCESS){UARTM_WriteByte(UARTM_CH0, TempData);}//Агар UARTM_ReadByte() SUCCESS-ро баргардонад, пас UART ин байти маълумотро менависад |
Ном | u32 UARTM_Read(u32 CH, u8 *pBuffer, u32 uLength) | |
Функсия | Амали хониши модули UART (RX) | |
Вуруд | CH | Канали UART |
pBuffer | Нишондиҳандаи буферӣ | |
uLength | Дарозии маълумоте, ки хонда мешавад | |
Натиҷа | Шумораи хондан | Дарозии маълумот хонда шуд |
Истифода | u8 Санҷиши2[10]; u32 Лен; Len = UARTM_Read(UARTM_CH0, Test2, 5); агар (Len > 0){UARTM_Write(UARTM_CH0, Test2, Len);}//UARTM_Read() 5 байт маълумотро мехонад ва маълумотро дар Test2 нигоҳ медорад ва миқдори байтҳои хондашударо таъин мекунад ба Лен // Навиштани маълумоте, ки аз Test2 гирифта шудааст |
Ном | u32 UARTM_GetReadBufferLength(u32 CH) | |
Функсия | Гирифтани дарозии буфери хондан (RX) | |
Вуруд | CH | Канали UART |
Натиҷа | uLength | Дарозии буферро хонед |
Истифода | UARTM_Init(UARTM_CH0, &USART_InitStructure, 40); // Оғози модули UART дар ҳоле ки (UARTM_GetReadBufferLength(UARTM_CH0) < 5);//Интизор шавед, то UARTM_ReadBuffer 5 байт маълумотро қабул кунад |
Ном | u32 UARTM_GetWriteBufferLength(u32 CH) | |
Функсия | Гирифтани дарозии буфери навиштан (TX) | |
Вуруд | CH | Канали UART |
Натиҷа | uLength | Дарозии буферро нависед |
Ном | u8 UARTM_IsTxFinished(u32 CH) | |
Функсия | Ҳолати TX-ро ба даст оред | |
Вуруд | CH | Канали UART |
Натиҷа | ДУРУСТ | Ҳолати TX: анҷом ёфт |
ДУРУГ | Ҳолати TX: тамом нашудааст | |
Истифода | UARTM_WriteByte(UARTM_CH0, 'O'); #if 1 // “uart_module.c” SVN >= 525 дар ҳоле лозим аст (UARTM_IsTxFinished(UARTM_CH0) == FALSE) #digar (1) #endif //Ин API метавонад барои тафтиши ҳолати TX истифода шавад, тавре ки дар боло нишон дода шудааст; то ба итмом расидани API UARTM_WriteByte() мунтазир бошед, яъне ҳолати TX TRUE аст ва сипас амалҳои минбаъдаро идома диҳед.//Маҳдудият илова карда мешавад, зеро ин функсия то 525 рақами версияи SVN дар uart_module.c илова карда нашудааст. |
Ном | бекор UARTM_DiscardReadBuffer(u32 CH) | |
Функсия | Маълумотро дар буфери хондан партоед | |
Вуруд | CH | Канали UART |
Истифодаи API Examples
Ин бахш API навиштан ва хондани собиқро нишон медиҳадampРамзи барномаи "Module_UART" бо истифода аз раванди оғозсозӣ ва "UART_Module_Ex"ample” раванди рамзи ариза. Пеш аз истифодаи API, корбарон бояд сарлавҳаи API-ро дохил кунанд file ба рамзи сарчашмаи асосии барнома file (#include "middleware/uart_module.h").
Тавре ки дар расми 14 нишон дода шудааст, ҳангоми ворид шудан ба раванди ибтидосозӣ, аввал сохтори конфигуратсияи UART-ро муайян кунед. Сипас аъзои сохтори конфигуратсияи UART-ро аз ҷумла BaudRate, WordLength, StopBits, Parity ва Mode танзим кунед. Дар ниҳоят, функсияи ибтидоии API-ро даъват кунед, ки анҷоми он ба анҷоми раванди оғозёбӣ ишора мекунад. Пас аз ин корбарон метавонанд амалиёти навиштан ва хонданро дар асоси конфигуратсияи асосии пешакӣ муқарраршудаи UART идома диҳанд.
Расми 14. Ҷадвали ҷараёни оғозёбӣ
"UART_Module_Example" рамзи барнома амалиёти хондан ва навиштани API-ро ба таври такрорӣ нишон медиҳад. Ҷадвали ҷорӣ барои ин дар расми 15 нишон дода шудааст. Функсияҳои API-и истифодашуда UARTM_WriteByte(), UARTM_Write(), UARTM_ReadByte(), UARTM_Read() ва UARTM_GetReadBufferLength() мебошанд. Тавсифи онҳо дар бахши "Тасвири API" оварда шудааст.
Расми 15. Ҷадвали ҷараёни Навиштан ва Хондан Examples
Рамзи дигари барномаи "UART_Bridge" дар папкаи "Module_UART" мавҷуд аст, ки ба он марбут аст file тавсиф дар фасли "Сохтори директория" ворид карда шудааст. Рамзи барномаи "UART_Bridge" ду канали UART, UART CH0 ва UART CH1 -ро фаъол мекунад ва сипас протоколи иртиботиро байни ду дастгоҳи UART тавассути сохторҳои COMMAND, gCMD1 ва gCMD2 танзим мекунад. Инҳо дар uart_bridge.c муайян шудаанд, тавре ки дар зер нишон дода шудааст. UARTBridge_CMD1TypeDef gCMD1:
Тағйирёбанда Ном | Навъи | Тавсифи |
uHeader | u8 | Сарлавҳа |
uCmd | u8 | Фармон |
uData[3] | u8 | Маълумот |
UARTBridge_CMD2TypeDef gCMD2:
Тағйирёбанда Ном | Навъи | Тавсифи |
uHeader | u8 | Сарлавҳа |
uCmdA | u8 | Фармон А |
uCmdB | u8 | Фармони Б |
uData[3] | u8 | Маълумот |
Дар рамзи барномаи "UART_Bridge", gCMD1-ро истифода баред, то маълумотро ҳамчун бастаи фармон қабул кунед ва сипас онро таҳлил кунед. Сипас, мувофиқи протоколи иртиботи фармоишӣ, gCMD2-ро ҳамчун бастаи ҷавоб таъин кунед ва онро интиқол диҳед. Дар зер як собиқ астample аз маҷмӯи фармони gCMD1) ва бастаи ҷавоб (gCMD2). Бастаи фармон (UARTBridge_CMD1TypeDef gCMD1):
Байт 0 | Байт 1 | Байт 2 ~ Байт 4 |
uHeader | uCmd | uData [3] |
"А" | "1" | "х, у, з" |
Бастаи вокуниш (UARTBridge_CMD2TypeDef gCMD2):
Байт 0 | Байт 1 | Байт 2 | Байт 3 ~ Байт 5 |
uHeader | uCmdA | uCmdB | uData [3] |
"Б" | "а" | "1" | "х, у, з" |
Шуғли захираҳо
Гирифтани HT32F52352 ҳамчун собиқample, захираҳои ишғолкардаи модули UART дар зер нишон дода шудаанд.
HT32F52352 | |
Андозаи ROM | 946 байт |
Андозаи RAM | 40*1 +256*2 Байт |
Шарҳ:
- Тағирёбандаҳои глобалӣ, аз ҷумла парчамҳо ва ҳолати як канал 40 байт RAM-ро ишғол мекунанд.
- Ин барои шароите аст, ки як канали ягона истифода мешавад ва андозаи буфери TX/RX 128/128 байт аст. Андозаи буферро мувофиқи талаботи барнома муқаррар кардан мумкин аст.
Љадвали 4. Машѓули захирањои коди ариза
- Муҳити ҷамъоварӣ: MDK-Arm V5.36, ARMCC V5.06 навсозии 7 (сохт 960)
- Варианти оптимизатсия: Сатҳи 2 (-O2)
Дастурҳо барои истифода
Ин боб омодагии экологиро барои коди замимаи "Module_UART" ва инчунин марҳилаҳои таҳия ва санҷиш муаррифӣ мекунад.
Омодасозии муҳити зист
Таҷҳизот ва нармафзоре, ки барои коди барномаи "Module_UART" лозиманд, дар зер оварда шудаанд.
Љадвали 5. Омодасозии сахтафзор/нармафзори муњити зист
Таҷҳизот / нармафзор | Ҳисоб | Шарҳ |
Маҷмӯаи ибтидоӣ | 1 | Ин ёддошти барнома маҷмӯаи Starter HT32F52352-ро ҳамчун собиқ истифода мебарадample |
Сими USB | 1 | Micro USB, ба компютер пайваст |
Рамзи ариза | — | Роҳи зеркашӣ, file ва конфигуратсияи директория дар бахши "Зеркашии захираҳо ва омодасозӣ" ҷорӣ карда шудаанд. Роҳ: "\\application\Module_UART\UART_Module_Exampле ” |
Мӯҳлати Тера | — | Ба қисмати "Терминал нармафзор" муроҷиат кунед |
Keil IDE | — | Keil uVision V5.xx |
Аввалан, маҷмӯаи Starter HT32F52352-ро дар якҷоягӣ бо функсияи Virtual COM Port (VCP) -и e-Link32 Lite барои муаррифии барномаи UART истифода баред. Барои ин бояд омодагии зерини экологӣ амалӣ карда шавад:
- Дар тахта ду интерфейси USB мавҷуд аст. Барои пайваст кардани компютер ва интерфейси eLink32 Lite дар тахта, тавре ки дар расми 16-(a) нишон дода шудааст, сими USB-ро истифода баред.
- Азбаски рамзи барнома бояд функсияи e-Link32 Lite Virtual COM Port (VCP) -ро истифода барад, боварӣ ҳосил кунед, ки PAx*2 ва DAP_Tx-и UART Jumper-J2*1 бо истифода аз jumper кӯтоҳ карда шудааст. Ҷойгиршавии J2 дар расми 16-(б) нишон дода шудааст.
Шарҳ
- J2 дар маҷмӯаи оғозёбӣ ду имкон дорад, PAx ва DAP_Tx кӯтоҳ ё PAx ва RS232_Tx кӯтоҳ. Барои функсияҳои танзимоти муфассал ба дастури корбарии Starter Kit муроҷиат кунед.
- Ҷойгиршавии PIN MCU UART RX дар маҷмӯаҳои гуногуни Starter гуногун аст. Ин собикample PAx-ро барои нишон додани пин RX истифода мебарад.
Тасвири 16. Диаграммаи блоки маҷмӯаи HT32 Starter
Акнун тахтаи мақсадноки корбарро дар якҷоягӣ бо функсияи Virtual COM Port (VCP) -и e-Link32 Pro барои муаррифии барномаи UART истифода баред. Барои ин бояд омодагии зерини экологӣ амалӣ карда шавад:
- Як тарафи e-Link32 Pro ба компютер бо истифода аз сими USB Mini пайваст карда шудааст ва тарафи дигар тавассути сими хокистарии 10-бит ба тахтаи ҳадафи корбар пайваст карда мешавад. Пайвастшавӣ байни интерфейсҳои SWD-и кабел ва тахтаи мақсаднок бо истифода аз хатҳои Dupont, тавре ки дар расми 17-(а) нишон дода шудааст, амалӣ карда мешавад.
- Пайвастҳои иртиботии e-Link32 Pro Pin # 7 VCOM_RXD ва Pin # 8 - VCOM_TXD мебошанд. Онҳо бояд ба пинҳои TX ва RX-и тахтаи ҳадафи корбар пайваст карда шаванд, тавре ки дар расми 17-(б) нишон дода шудааст.
Тасвири 17. e-Link32 Pro + Диаграммаи блоки Шӯрои Ҳадафҳои корбар
Тартиб ва санҷиш
Ин бахш "application\Module_UART\UART_Module_Example” ҳамчун собиқample барои ҷорӣ намудани равандҳои тартибдиҳӣ ва санҷиш. Пеш аз ин, боварӣ ҳосил кунед, ки ҳамаи омодагиҳои дар боби қаблӣ тавсифшуда иҷро шудаанд ва нармафзори терминали Tera Term бор карда шудаанд.
Қадамҳои муфассали амалиёт дар зер ҷамъбаст карда мешаванд.
Қадами 1. Санҷиши фаъолкунӣ
Муҳити сахтафзорро тавре танзим кунед, ки дар боби қаблӣ тавсиф шудааст. Пас аз фурӯзон, LED-и барқи D9 дар тарафи чапи поёни маҷмӯаи Starter равшан мешавад. LED-и D1 USB дар e-Link32 Lite дар тарафи рости боло пас аз ба итмом расидани бақайдгирии USB равшан хоҳад шуд. Агар D1 пас аз муддати тӯлонӣ равшан нашавад, тасдиқ кунед, ки сими USB қобилияти муошират карданро дорад. Агар не, онро хориҷ кунед ва аз нав ҷойгир кунед.
Қадами 2. Эҷоди лоиҳа
Барномаро кушоед\Module_UART\UART_Module_Example папка, дар _CreateProject.bat клик кунед file барои тавлиди лоиҳа, тавре ки дар расми 18 нишон дода шудааст. Азбаски ин ёддошти барнома маҷмӯаи Starter HT32F52352-ро истифода мебарад, лоиҳаи Keil IDE “Project_52352.uvprojx”-ро дар зери ҷузвдони MDK_ARMv5 кушоед.
Расми 18. _CreateProject.bat-ро барои тавлиди лоиҳа иҷро кунед
Қадами 3. Тартиб ва барнома
Пас аз кушодани лоиҳа, аввал тугмаи "Сохта" -ро клик кунед (ё миёнабури "F7" -ро истифода баред), пас "Зеркашӣ" -ро клик кунед (ё миёнабури "F8" -ро истифода баред). Пас аз ин, натиҷаҳои сохтмон ва зеркашӣ дар равзанаи Сохтани натиҷа нишон дода мешаванд. Ба расми 19 нигаред.
Расми 19. Натоиҷи сохтмон ва зеркашӣ
Қадами 4. Нармафзори Tera Term -ро кушоед ва бандари силсилавиро танзим кунед
Нармафзори Tera Term ва порти COM-ро кушоед. Диққат диҳед, ки оё рақами порти COM, ки аз ҷониби маҷмӯаи Starter тавлид шудааст, дуруст аст ё не. Пас "Танзим >> Порти силсилавӣ" -ро клик кунед, то ба интерфейси конфигуратсия ворид шавед. Конфигуратсияи интерфейси UART-и рамзи барномаи "Module_UART" дар бахши "Терминал нармафзор" тавсиф шудааст. Натиҷаи танзим дар расми 20 нишон дода шудааст.
Тасвири 20. Натиҷаи Setup Tera Term Serial Port
Қадами 5. Системаро аз нав танзим кунед ва санҷед
Тугмаи аз нав танзимкунии SK - B1 Reset -ро пахш кунед. Пас аз ин, "ABCT ин озмоиш аст!" хабар мешавад
тавассути API интиқол дода мешавад ва дар равзанаи Tera Term, тавре ки дар расми 21 нишон дода шудааст, намоиш дода мешавад. Дар робита ба функсияи қабул, ҳангоми ворид кардани маълумот ба равзанаи Tera Term, API мувофиқ барои муайян кардани дарозии буфери қабул истифода мешавад. Вақте ки маълумоти аз ҷониби компютер қабулшуда ба 5 байт мерасад, 5 байт маълумоти гирифташуда пайдарпай фиристода мешавад. Тавре ки дар расми 22 нишон дода шудааст, маълумотҳои пайдарпай воридшуда "1, 2, 3, 4, 5" мебошанд, ки тавассути API қабул ва муайян карда мешаванд. Пас аз ин, маълумоти "1, 2, 3, 4, 5" пас аз панҷ вуруд чоп карда мешавад.
Расми 21. Санҷиши функсионалии коди "Module_UART" - Интиқол
Расми 22. Санҷиши функсионалии коди "Module_UART" - қабул
Дастурҳои трансплантатсия
Ин бахш нишон медиҳад, ки чӣ гуна API-ҳоро ба лоиҳаҳои корбар ҳамгиро кардан мумкин аст.
Қадами 1. Иловаи uart_module.c file ба лоиҳа. Папкаи корбарро бо тугмаи рост клик кунед. Интихоб кунед "Иловаи мавҷуда Files ба Гурӯҳи 'Истифодабаранда'…”, пас uart_module.c -ро интихоб кунед file ва "Илова кардан" -ро клик кунед, тавре ки дар расми 23 нишон дода шудааст. Ба бахши "Сохтори директория" муроҷиат кунед. file тавсифи роҳ.
Расми 23. Иловаи uart_module.c File ба Лоиҳа
Қадами 2. Иловаи ring_buffer.c file ба лоиҳа. Папкаи корбарро бо тугмаи рост клик кунед. Интихоб кунед "Иловаи мавҷуда Files ба Гурӯҳи 'Истифодабаранда'…”, пас ring_buffer.c-ро интихоб кунед file ва тугмаи "Илова кардан" -ро клик кунед, тавре ки дар расми 24 нишон дода шудааст.\ Ба бахши "Сохтори директория" муроҷиат кунед file тавсифи роҳ.
Расми 24. Иловаи ring_buffer.c File ба Лоиҳа
Қадами 3. Сарлавҳаи API-ро дохил кунед file ба аввали main.c, тавре ки дар расми 25 нишон дода шудааст. (Ислоҳ: #include “middleware/uart_module.h”)
Расми 25. Сарлавҳаи API-ро дохил кунед File ба main.c
Қадами 4. Танзимоти лозимиро барои иртиботи UART бо истифода аз ht32_board_config.h иҷро кунед file. Ин ба таври муфассал дар бахшҳои "Тасвири танзимот" ва "Танзимоти тағирот ва саволҳои зуд-зуд" муаррифӣ карда мешавад.
Танзимоти тағирот ва FAQs
Ин бахш чӣ гуна тағир додани танзимоти UART-ро муаррифӣ мекунад ва баъзе саволҳои маъмулеро, ки ҳангоми истифода дучор мешаванд, шарҳ медиҳад.
Тағир додани таъиноти PIN UART
- Бо истинод ба ҷадвали маълумотии HT32F52352 "Таъиноти PIN" ҷадвали Харитасозии Функсияҳои алтернативӣ, ки функсияҳои AFIO-и навъи дастгоҳро номбар мекунад, ҷустуҷӯ кунед. Барои пинҳои мувофиқи UART, ба сутуни "AF6 USART/UART" муроҷиат кунед, тавре ки дар расми 26 нишон дода шудааст.
Тасвири 26. HT32F52352 Ҷадвали Харитасозии Функсияи алтернативӣ
- Ин қадам ба корбарон роҳнамоӣ мекунад, ки бо истифода аз ҷадвали дар боло зикршуда пинҳои мувофиқи UART-ро пайдо кунанд. HT32F52352 собиқample USART1-ро ҳамчун канали пешфарз истифода мебарад. Дар ин ҷо, пинҳои TX ва RX USR1_TX ва USR1_RX мебошанд ва мутаносибан дар PA4 ва PA5 ҷойгиранд. Дар расми 27 мукотибаи пин ва инчунин таърифҳои пин дар "ht32_board_config.h" нишон дода шудааст. Майдонҳои холии "Баста" дар ҷадвали таъини PIN маънои онро дорад, ки дар ин баста ягон GPIO-и дахлдор вуҷуд надорад. Барои тағир додани пинҳои UART, ҷойгиршавии пинҳои мавриди ҳадафро пайдо кунед ва пинҳоро бо истифода аз "ht32_board_config.h" аз нав муайян кунед. file.
Расми 27. Муқовимати PIN ва Тағйироти танзимот
Илова кардани канали UART
Гирифтани HT32F52352 HTCFG_UARTM_CH1 ҳамчун собиқample, дар ин ҷо тасвир шудааст, ки чӣ тавр илова кардани канали нави UART.
Тағир додани ht32_board_config.h file
Бо истинод ба ҷадвали маълумотии HT32F52352 "Таъиноти PIN" ҷадвали Харитасозии Функсияҳои алтернативӣ, ки функсияҳои AFIO-и навъи дастгоҳро номбар мекунад, ҷустуҷӯ кунед. Азбаски USART1 ҳамчун HTCFG_UARTM_CH0 истифода шудааст, HTCFG_UARTM_CH1 нав иловашуда метавонад USART0-ро интихоб кунад. Дар ин ҷо, пинҳои TX ва RX мутаносибан дар PA2 ва PA3 ҷойгир шудаанд, тавре ки дар нимаи болоии расми 28 нишон дода шудааст. Тағйироти мувофиқ бо истифода аз хатҳои коди 120~126 дар ht32_board_config.h, тавре ки дар қуттии нуқтадори сурх дар расм нишон дода шудааст, амалӣ карда мешаванд. 28.
Расми 28. Илова кардани канали UART
Саволҳо
Q: Дар қадами 5-уми бахши Тартиб ва санҷиш, санҷиши функсионалии интиқол муқаррарӣ аст. Дар ин ҷо, "ABCT ин озмоиш аст!" паём бомуваффақият намоиш дода шуд, аммо барои функсияи қабул, чаро панҷ арзиши вуруд баргардонида ва намоиш дода намешаванд?
A: Санҷед, ки оё пинҳои MCU UART RX ва DAP_Tx-и UART Jumper-J2 бо истифода аз jumper кӯтоҳ карда шудаанд. Азбаски рамзи барномаи "Module_UART" бояд Порти виртуалии COM (VCP) -и e-Link32 Lite-ро истифода барад, танзими ноқилҳои кӯтоҳ бояд ба ду пинҳои чапи UART Jumper-J2, тавре ки дар расми 29 нишон дода шудааст, татбиқ карда шавад.
Расми 29. Танзимоти UART Jumper-J2
Савол: Баъд ҳангоми иҷрои "Сохта" (ё миёнабури "F7"), паёми хатогӣ пайдо мешавад, ки нишон медиҳад, ки версияи китобхонаи нармафзори миёнаравӣ аз версияи лозима кӯҳнатар аст? Ба расми 30 нигаред.
A: Татбиқи рамзи барномаи "Module_UART" бояд uart_module.c/h -ро дар бар гирад files, ки барои версияи муайяни китобхонаи нармафзор талабот дорад. Вақте ки чунин паёми хато пайдо мешавад, ин маънои онро дорад, ки китобхонаи нармафзори ҳозира истифодашаванда версияи кӯҳна аст. Аз ин рӯ, зарур аст, ки версияи навтаринро тавассути истиноди дар бахши "Китобхонаи нармафзор" пешниҳодшуда зеркашӣ кунед.
Расми 30. Паёми хатогии версияи китобхонаи нармафзор
Хулоса
Ин ҳуҷҷат муқаддимаи асосӣ барои кӯмак ба корбарон дар фаҳмиши беҳтари коди барномаи "Module_UART" ва протоколи иртиботи UART пешниҳод кардааст. Пас аз он зеркашӣ ва омодасозии захираҳо сурат гирифт. Боби Тавсифи функсионалӣ пешниҳод кард file сохтори феҳрист, меъмории API, тавсифи API ва истифодаи API, масаланampЛес. Боби Дастурамал оид ба истифода омодагӣ, тартиб додан ва санҷиши коди замимаи "Module_UART"-ро барои муҳити зист нишон додааст. Он инчунин дастурҳоро оид ба трансплантатсияи код ва танзими тағирот, инчунин шарҳ додани баъзе мушкилоти умумӣ, ки метавонанд дучор шаванд, пешниҳод кард. Ҳамаи ин дар якҷоягӣ ба корбарон имкон медиҳад, ки чӣ тавр истифода бурдани API-ро зуд дарк кунанд ва баъдан вақти оғозро кам кунанд.
Маводи истинод
Барои маълумоти иловагӣ, ба Holtek муроҷиат кунед webсайт: www.holtek.com
Маълумот дар бораи версияҳо ва тағирот
Сана | Муаллиф | Озод кардан | Маълумот дар бораи тағирот |
2022.04.30 | 蔡期育(Чи-Ю Цай) | V1.00 | Версияи якум |
Радди масъулият
Ҳама маълумот, тамғаҳои молӣ, логотипҳо, графика, видеоҳо, клипҳои аудиоӣ, истинодҳо ва дигар чизҳое, ки дар ин ҷо пайдо мешаванд webсайт ('Маълумот') танҳо барои истинод аст ва бояд дар вақти дилхоҳ бидуни огоҳии пешакӣ ва бо салоҳдиди Holtek Semiconductor Inc. ва ширкатҳои алоқаманди он (минбаъд 'Holtek', 'ширкат', 'мо',' тағир дода шавад. мо" ё "мо"). Дар ҳоле ки Холтек саъй мекунад, ки дурустии маълумотро дар ин бора таъмин кунад webДар сайт, ҳеҷ гуна кафолати мустақим ё дар назар дошташуда аз ҷониби Holtek ба дурустии Маълумот дода намешавад. Holtek барои ҳама гуна хатогӣ ё ихроҷ масъулият надорад.
Holtek барои ҳама гуна хисорот (аз он ҷумла, вале бо маҳдуд накардани вируси компютерӣ, мушкилоти система ё талафи маълумот), новобаста аз истифодаи он ё вобаста ба истифодаи ин масъулият надорад. webсайт аз ҷониби ягон ҳизб. Шояд дар ин минтақа пайвандҳо вуҷуд дошта бошанд, ки ба шумо имкон медиҳанд, ки ба он боздид кунед webсайтҳои ширкатҳои дигар.
Инхо webсайтҳо аз ҷониби Holtek назорат карда намешаванд. Holtek ҳеҷ гуна масъулият ва кафолат намедиҳад, ки ҳеҷ гуна маълумоте, ки дар ин сайтҳо намоиш дода мешавад. Гиперпайвандҳо ба дигарон webсайтҳо ба хатари шумо ҳастанд.
Маҳдудияти масъулият
Ба ҳеҷ ваҷҳ Holtek Limited дар назди ягон тарафи дигар барои талафот ё зараре, ки мустақиман ё ғайримустақим дар робита бо дастрасӣ ё истифодаи шумо ба он расонида шудааст, масъулият надорад. webсайт, мундариҷаи он ё ҳама гуна молҳо, маводҳо ё хидматҳо.
Қонуни идоракунӣ
Радди масъулият дар webсайт мувофиқи қонунгузории Ҷумҳурии Чин танзим ва тафсир карда мешавад. Истифодабарандагон ба салоҳияти ғайри истисноии судҳои Ҷумҳурии Чин пешниҳод хоҳанд кард.
Навсозии Радди Радди
Holtek ҳуқуқ дорад, ки Радди масъулиятро дар вақти дилхоҳ бо огоҳии пешакӣ ё бидуни огоҳии пешакӣ навсозӣ кунад, ҳама тағиротҳо фавран пас аз интишор ба webсайт.
Ҳуҷҷатҳо / Сарчашмаҳо
![]() |
Эзоҳ дар бораи аризаи HOLTEK HT32 MCU UART [pdf] Дастури корбар HT32 MCU, Эзоҳ дар бораи дархости UART, HT32 MCU UART, Эзоҳ дар бораи ариза, HT32, Эзоҳ дар бораи аризаи MCU UART, Эзоҳ дар бораи аризаи UART HT32 MCU |