ක්ෂුද්‍ර පාලක ඔබේ විනෝදාංශය නම් දත්ත පත්‍රිකා කියවන්නේ කෙසේද සහ ඇයි

ක්ෂුද්‍ර පාලක ඔබේ විනෝදාංශය නම් දත්ත පත්‍රිකා කියවන්නේ කෙසේද සහ ඇයි

Microelectronics යනු මැජික් Arduino වලට ස්තුති වන්නට මෑත වසරවල විලාසිතාමය විනෝදාංශයකි. නමුත් මෙන්න ගැටලුව: ප්රමාණවත් උනන්දුවකින්, ඔබට ඉක්මනින් DigitalWrite () අභිබවා යා හැක, නමුත් ඊළඟට කුමක් කළ යුතුද යන්න සම්පූර්ණයෙන්ම පැහැදිලි නැත. Arduino සංවර්ධකයින් ඔවුන්ගේ පරිසර පද්ධතියට ඇතුළු වීමට ඇති බාධකය අඩු කිරීමට විශාල උත්සාහයක් ගෙන ඇත, නමුත් ඉන් පිටත ආධුනිකයින්ට ප්‍රවේශ විය නොහැකි කටුක පරිපථ සහිත අඳුරු වනාන්තරයක් තවමත් පවතී.

උදාහරණයක් ලෙස, දත්ත පත්රිකා. ඔවුන් සතුව සෑම දෙයක්ම ඇති බව පෙනේ, එය රැගෙන එය භාවිතා කරන්න. නමුත් ඒවායේ කතුවරුන් පැහැදිලිවම ක්ෂුද්‍ර පාලකයන් ප්‍රචලිත කිරීමේ කාර්යය තමන් විසින්ම සකසා නැත. සමහර විට එය පෙනේනොදන්නා අය හැකිතාක් ව්‍යාකූල කිරීම සඳහා සරල දේවල් විස්තර කිරීමේදී ඔවුන් හිතාමතාම තේරුම්ගත නොහැකි යෙදුම් සහ කෙටි යෙදුම් අනිසි ලෙස භාවිතා කරන බව. නමුත් සෑම දෙයක්ම එතරම් නරක නැත; අවශ්ය නම්, කරඬුව විවෘත වේ.

මෙම ලිපියෙන් මම විනෝදාංශ අරමුණු සඳහා දත්ත පත්‍රිකා සමඟ සන්නිවේදනය කරන මානව ශාස්ත්‍ර විශේෂඥයෙකුගේ අත්දැකීම් බෙදා ගන්නෙමි. පෙළ Arduino කලිසම් වලින් හැදී වැඩුණු ආධුනිකයන් සඳහා අදහස් කෙරේ; එය ක්ෂුද්‍ර පාලකයන්ගේ ක්‍රියාකාරිත්වයේ මූලධර්ම පිළිබඳ යම් අවබෝධයක් ලබා ගනී.

මම සම්ප්‍රදායිකව පටන් ගන්නම්

Arduino මත LED දැල්වීම

සහ වහාම කේතය:

void setup() {
DDRB |= (1<<5);
}

void loop() {
PINB = (1<<5);
for (volatile uint32_t k=0; k<100000; k++);
}

"මේ කුමක් ද? - නවීන පාඨකයෙක් අසනු ඇත. – ඔබ PINB ආදාන ලේඛනයට යමක් ලියන්නේ ඇයි? එය කියවීම සඳහා පමණි! ” ඇත්තටම, Arduino ලියකියවිලි, අන්තර්ජාලයේ බොහෝ අධ්‍යාපනික ලිපි මෙන්, මෙම ලේඛනය කියවීමට පමණක් බව සඳහන් කරයි. මම එය නැවත කියවන තුරු මටම එසේ සිතුනි දත්ත පත Atmega328p වෙත, මෙම ලිපිය සකස් කරන්න. සහ එහෙ:

ක්ෂුද්‍ර පාලක ඔබේ විනෝදාංශය නම් දත්ත පත්‍රිකා කියවන්නේ කෙසේද සහ ඇයි

මෙය සාපේක්ෂව නව ක්‍රියාකාරිත්වයකි, එය Atmega8 හි නොතිබුණි, සෑම කෙනෙකුම ඒ ගැන දන්නේ නැත හෝ පසුගාමී අනුකූලතා හේතු නිසා සඳහන් නොවේ. නමුත් කුඩා ප්‍රසිද්ධ ඒවා ඇතුළුව චිපයේ සියලුම හැකියාවන් භාවිතා කිරීම සඳහා දත්ත පත්‍රිකා කියවීම වටී යන අදහස නිරූපණය කිරීම සඳහා එය බෙහෙවින් සුදුසු ය. තවද මෙය එකම හේතුව නොවේ.

වෙනත් දත්ත පත්‍රිකා කියවන්නේ ඇයි?

සාමාන්‍යයෙන්, Arduino ඉංජිනේරුවන්, LED සහ AnalogWrites සමඟ ප්‍රමාණවත් ලෙස ක්‍රීඩා කර ඇති අතර, දැනටමත් ලිඛිත පුස්තකාල ඇති සියලුම ආකාරයේ මොඩියුල සහ චිප්ස් පුවරුවට සම්බන්ධ කිරීමට පටන් ගනී. ඉක්මනින් හෝ පසුව, එය කළ යුතු පරිදි ක්‍රියා නොකරන පුස්තකාලයක් දිස්වේ. එවිට ආධුනිකයා එය නිවැරදි කිරීමට එය තෝරා ගැනීමට පටන් ගනී, පසුව ...

සම්පූර්ණයෙන්ම තේරුම්ගත නොහැකි දෙයක් එහි සිදු වේ, එබැවින් ඔබට ගූගල් වෙත ගොස්, බොහෝ නිබන්ධන කියවා, යමෙකුගේ සුදුසු කේතයක කොටස් ඇදගෙන අවසානයේ ඔබේ ඉලක්කය සපුරා ගත යුතුය. මෙය ජයග්‍රහණය පිළිබඳ ප්‍රබල හැඟීමක් ලබා දෙයි, නමුත් ඇත්ත වශයෙන්ම මෙම ක්‍රියාවලිය යතුරුපැදියක ප්‍රතිලෝම ඉංජිනේරුකරණයෙන් රෝදය ප්‍රතිනිර්මාණය කිරීම වැනිය. එපමණක්ද නොව, මෙම බයිසිකලය ක්රියා කරන ආකාරය පිළිබඳ අවබෝධය වැඩි නොවේ. මම දන්නවා, මම මෙය බොහෝ කාලයක් තිස්සේ කළ නිසා.

මෙම උද්වේගකර ක්‍රියාකාරකම වෙනුවට මම Atmega328 ප්‍රලේඛනය අධ්‍යයනය කිරීමට දින කිහිපයක් ගත කළේ නම්, මට විශාල කාලයක් ඉතිරි වනු ඇත. සියල්ලට පසු, මෙය තරමක් සරල ක්ෂුද්ර පාලකයකි.

මේ අනුව, ක්ෂුද්‍ර පාලකය සාමාන්‍යයෙන් ක්‍රියා කරන ආකාරය සහ එයට කළ හැකි දේ සිතා ගැනීමට ඔබ අවම වශයෙන් දත්ත පත්‍රිකා කියවිය යුතුය. සහ තවදුරටත්:

  • අන් අයගේ පුස්තකාල පරීක්ෂා කිරීමට සහ ප්‍රශස්ත කිරීමට. ඒවා බොහෝ විට ලියා ඇත්තේ රෝදය ප්‍රතිනිර්මාණය කරන එකම ආධුනිකයන් විසිනි; නැතහොත්, ඊට පටහැනිව, කතුවරුන් හිතාමතාම ඒවා ඕනෑවට වඩා මෝඩ නොවන බවට පත් කරයි. එය තුන් ගුණයකින් විශාල හා මන්දගාමී වීමට ඉඩ දෙන්න, නමුත් එය අනිවාර්යයෙන්ම වැඩ කරනු ඇත;

  • කිසිවෙකු පුස්තකාලයක් ලියා නොමැති ව්‍යාපෘතියක චිප්ස් භාවිතා කිරීමට හැකි වීම;

  • එක් MK රේඛාවකින් තවත් ස්ථානයකට සංක්‍රමණය වීම ඔබට පහසු කිරීම සඳහා;

  • Arduino වලට නොගැලපෙන ඔබේ පැරණි කේතය අවසානයේ ප්‍රශස්ත කිරීමට;

  • ඕනෑම චිප් එකක් එහි රෙජිස්ටර් හරහා සෘජුවම පාලනය කරන්නේ කෙසේදැයි ඉගෙන ගැනීමට, එහි පුස්තකාලවල ව්‍යුහය තිබේ නම් ඒවා අධ්‍යයනය කිරීම ගැන කරදර නොවී.

HAL සහ LL ඇති විට කෙලින්ම ලියාපදිංචි වීමට ලියන්නේ ඇයි?

ශබ්දකෝෂය
HAL, ඉහළ වියුක්ත ස්තරය - ඉහළ මට්ටමේ වියුක්තයක් සහිත ක්ෂුද්‍ර පාලකයක් පාලනය කිරීම සඳහා පුස්තකාලයක්. ඔබට SPI1 අතුරුමුහුණත භාවිතා කිරීමට අවශ්‍ය නම්, ඔබ SPI1 වින්‍යාස කර සක්‍රීය කරන්නේ කුමන රෙජිස්ටර් මොනවාද යන්න ගැන නොසිතා.
LL, පහළ මට්ටමේ API - ලියාපදිංචි ලිපින සහිත මැක්‍රෝ හෝ ව්‍යුහයන් අඩංගු පුස්තකාලයක්, ඔබට ඒවා නමින් ප්‍රවේශ වීමට ඉඩ සලසයි. Atmega හි DDRx, PORTx, PINx LL වේ.

"HAL, LL හෝ රෙජිස්ටර්" යන මාතෘකාව පිළිබඳ ආරවුල් Habré හි අදහස් දැක්වීමේදී නිතිපතා සිදු වේ. තාරකා දැනුමට ප්‍රවේශය ලබා නොගෙන, මම මගේ ආධුනික අත්දැකීම් සහ සිතුවිලි සරලව බෙදා ගන්නෙමි.

අඩු වැඩි වශයෙන් Atmega හදුනාගෙන STM32 හි විශ්මය ජනක බව පිළිබඳ ලිපි කියවීමෙන් පසු, මම විවිධ පුවරු දුසිම් භාගයක් මිලදී ගත්තා - ඩිස්කවරි, සහ නිල් පෙති සහ මගේ ගෙදර හැදූ නිෂ්පාදන සඳහා චිප්ස් පවා. ඔවුන් සියල්ලෝම වසර දෙකක් පෙට්ටියක දූවිලි එකතු කළහ. සමහර විට මම මටම කියා ගත්තෙමි: “ඒක තමයි, මේ සති අන්තයේ පටන් මම STM ප්‍රගුණ කරනවා,” CubeMX දියත් කර, SPI සඳහා සැකසුම ජනනය කර, එහි ප්‍රතිඵලයක් ලෙස ලැබෙන පෙළ බිත්තිය දෙස බලා, STM ප්‍රකාශන හිමිකම සමඟ නොමසුරුව රස ගන්වා, මෙය කෙසේ හෝ බව තීරණය කළේය. බොහෝ.

ක්ෂුද්‍ර පාලක ඔබේ විනෝදාංශය නම් දත්ත පත්‍රිකා කියවන්නේ කෙසේද සහ ඇයි

ඇත්ත වශයෙන්ම, CubeMX මෙහි ලියා ඇති දේ ඔබට සොයාගත හැකිය. නමුත් ඒ සමඟම සියලු වචන මතක තබාගෙන ඒවා අතින් ලිවීම යථාර්ථවාදී නොවන බව පැහැදිලිය. මෙය නිදොස් කිරීම සඳහා, මට අහම්බෙන් කියුබ් තුළ කොටුවක් සලකුණු කිරීමට අමතක වුවහොත්, එය සම්පූර්ණයෙන්ම හොඳයි.

අවුරුදු දෙකක් ගත වී ඇත, මම තවමත් මගේ තොල් ලෙවකනවා ST MCU සොයන්නා සියලු වර්ගවල රසවත්, නමුත් මගේ අවබෝධයෙන් ඔබ්බට, චිප්ස්, සහ අහම්බෙන් හමු විය අපූරු ලිපියක්, STM8 ගැන වුවත්. සහ හදිසියේම මේ කාලය පුරාම මම විවෘත දොරකට තට්ටු කරමින් සිටි බව මට වැටහුණි: STM හි රෙජිස්ටර් වෙනත් ඕනෑම MK හි ලේඛනවලට සමාන ලෙස සකසා ඇති අතර ඒවා සමඟ වැඩ කිරීමට කියුබ් අවශ්‍ය නොවේ. ඒකවත් පුළුවන් වුනාද?..

HAL සහ විශේෂයෙන්ම STM32CubeMX යනු STM32 චිප් සමඟ සමීපව කටයුතු කරන වෘත්තීය ඉංජිනේරුවන් සඳහා වූ මෙවලමකි. ප්‍රධාන ලක්ෂණය වන්නේ, STM32 රේඛාව තුළ රැඳී සිටියදී, එක් MCU එකකින් තවත් හරයකට සහ එක් හරයක සිට තවත් හරයකට පවා ඉක්මනින් සංක්‍රමණය වීමේ හැකියාව, වියුක්ත කිරීමේ ඉහළ මට්ටමකි. විනෝදාංශ කරන්නන් එවැනි ගැටළු වලට මුහුණ දෙන්නේ කලාතුරකිනි - අපගේ ක්ෂුද්‍ර පාලක තේරීම, රීතියක් ලෙස, AliExpress එකතුවට සීමා වී ඇති අතර, අපි බොහෝ විට රැඩිකල් ලෙස වෙනස් චිප් අතර සංක්‍රමණය වෙමු - අපි Atmega සිට STM වෙත, STM සිට ESP දක්වා හෝ අපගේ චීන මිතුරන්ට අලුත් දෙයක් යමු. අපට විසි කරන්න. HAL මෙහි උදව් නොකරන අතර එය අධ්‍යයනය කිරීමෙන් බොහෝ කාලයක් ගතවනු ඇත.

LL ඉතිරිව ඇත - නමුත් එහි සිට රෙජිස්ටර් වෙත පියවර භාගයක් ඇත. පුද්ගලිකව, මට රෙජිස්ටර් ලිපින සමඟ මගේ මැක්‍රෝ ලිවීම ප්‍රයෝජනවත් වේ: මම දත්ත පත්‍රිකාව වඩාත් ප්‍රවේශමෙන් අධ්‍යයනය කරමි, අනාගතයේදී මට අවශ්‍ය දේ සහ නියත වශයෙන්ම මා නොකරන දේ ගැන මම සිතමි, මගේ වැඩසටහන් වඩා හොඳින් ව්‍යුහගත කරමි, සාමාන්‍යයෙන්, ජය ගැනීම මතක තබා ගැනීමට උපකාරී වේ. .

ඊට අමතරව, ජනප්‍රිය STM32F103 සමඟ සූක්ෂ්මතාවයක් ඇත - ඒ සඳහා නොගැලපෙන LL අනුවාද දෙකක් ඇත, STM වෙතින් එක් නිලධාරියෙක්, දෙවැන්න Leaf Labs වෙතින්, STM32duino ව්‍යාපෘතියේ භාවිතා වේ. ඔබ විවෘත මූලාශ්‍ර පුස්තකාලයක් ලියන්නේ නම් (සහ මට හරියටම තිබුණි එවැනි කාර්යයක්), ඔබ අනුවාද දෙකක් සෑදිය යුතුය, නැතහොත් රෙජිස්ටර් වෙත සෘජුවම ප්‍රවේශ විය යුතුය.

අවසාන වශයෙන්, LL ඉවත් කිරීම, මගේ මතය අනුව, සංක්‍රමණය පහසු කරයි, විශේෂයෙන් ඔබ ව්‍යාපෘතියේ ආරම්භයේ සිටම එය සැලසුම් කරන්නේ නම්. අතිශයෝක්තියට නැංවූ උදාහරණය: LL නොමැතිව Atmel Studio හි Arduino blink ලියන්න:

#include <stdint.h>

#define _REG(addr) (*(volatile uint8_t*)(addr))

#define DDR_B 0x24
#define OUT_B 0x25

int main(void)
{
    volatile uint32_t k;

    _REG(DDR_B) |= (1<<5);

    while(1)
    {
        _REG(OUT_B) |= (1<<5);
        for (k=0; k<50000; k++);
        _REG(OUT_B) &= ~(1<<5);
        for (k=0; k<50000; k++);
    } 
}

මෙම කේතය STM8 සහිත චීන පුවරුවක LED දැල්වීම සඳහා (ST Visual Desktop වෙතින්), එහි ඇති ලිපින දෙකක් වෙනස් කිරීම ප්‍රමාණවත් වේ:

#define DDR_B 0x5007
#define OUT_B 0x5005

ඔව්, මම නිශ්චිත පුවරුවක LED සම්බන්ධ කිරීමේ අංගයක් භාවිතා කරමි, එය ඉතා සෙමින් බැබළෙනු ඇත, නමුත් එය සිදුවනු ඇත!

කුමන ආකාරයේ දත්ත පත්‍රිකා තිබේද?

ලිපිවල සහ සංසදවල, රුසියානු සහ ඉංග්‍රීසි යන දෙඅංශයෙන්ම, "දත්ත පත්‍රිකා" යන්නෙන් අදහස් කරන්නේ චිප්ස් සඳහා ඕනෑම තාක්ෂණික ලියකියවිලි වන අතර, මම මෙම පෙළෙහි ද එයම කරමි. විධිමත් ලෙස, ඒවා එවැනි ලේඛනවල එක් වර්ගයක් පමණි:

දත්ත පත - කාර්ය සාධන ලක්ෂණ, උපායශීලී සහ තාක්ෂණික ලක්ෂණ. ඕනෑම ඉලෙක්ට්රොනික සංරචක සඳහා අනිවාර්ය වේ. පසුබිම් තොරතුරු අතේ තබා ගැනීම ප්‍රයෝජනවත් වේ, නමුත් කල්පනාකාරීව එහි කියවීමට බොහෝ දේ නොමැත. කෙසේ වෙතත්, සරල චිප්ස් බොහෝ විට අනවශ්‍ය ලේඛන නිෂ්පාදනය නොකිරීමට දත්ත පත්‍රිකාවකට සීමා වේ; මේ අවස්ථාවේ දී යොමු අත්පොත මෙහි ඇතුළත් වේ.

යොමු අත්පොත - උපදෙස්ම, පිටු 1000+ ක සෞඛ්‍ය සම්පන්න පොතක්. චිපයට හිර වී ඇති සෑම දෙයකම වැඩ විස්තරාත්මකව විස්තර කෙරේ. ක්ෂුද්ර පාලකය ප්රගුණ කිරීම සඳහා ප්රධාන ලේඛනය. මෙන් නොව දත්ත පත, MKs පුළුල් පරාසයක් සඳහා උපදෙස් ලියා ඇත; ඒවායේ ඔබේ නිශ්චිත ආකෘතියේ නොමැති පර්යන්ත පිළිබඳ තොරතුරු බොහොමයක් අඩංගු වේ.

ක්‍රමලේඛන අත්පොත හෝ උපදෙස් කට්ටල අත්පොත - අද්විතීය ක්ෂුද්ර පාලක විධාන සඳහා උපදෙස්. එකලස් කිරීමේ භාෂාවෙන් වැඩසටහන් කරන අය සඳහා නිර්මාණය කර ඇත. සම්පාදක කතුවරුන් එය කේතය ප්‍රශස්ත කිරීම සඳහා සක්‍රියව භාවිතා කරයි, එබැවින් සාමාන්‍ය අවස්ථාවක අපට එය අවශ්‍ය නොවනු ඇත. නමුත් මෙහි බැලීම සාමාන්‍ය අවබෝධයක් සඳහා, බාධාවකින් පිටවීම වැනි සමහර නිශ්චිත විධාන සඳහා මෙන්ම දෝශ නිරාකරණ ක්‍රියාකාරීව භාවිතා කිරීම සඳහා ප්‍රයෝජනවත් වේ.

අයදුම්පත් සටහන - බොහෝ විට කේත උදාහරණ සමඟ, විශේෂිත ගැටළු විසඳීම සඳහා ප්රයෝජනවත් උපදෙස්.

දෝෂ පත්රය - ප්‍රමිතිගත නොවන චිප් හැසිරීම් පිළිබඳ විස්තර, විසඳුම් විකල්ප තිබේ නම්.

දත්ත පත්‍රිකාවේ ඇති දේ

කෙලින්ම වෙත දත්ත පත අපට පහත කොටස් අවශ්‍ය විය හැකිය:

උපාංග සාරාංශය - දත්ත පත්‍රිකාවේ පළමු පිටුව උපාංගය කෙටියෙන් විස්තර කරයි. ඔබ කොතැනක හෝ චිපයක් සොයාගත් අවස්ථාවන්හිදී ඉතා ප්රයෝජනවත් වේ (එය වෙළඳසැලක දැක, එය පෑස්සුවා, සඳහනක් හමු විය) සහ එය කුමක්දැයි තේරුම් ගැනීමට අවශ්ය වේ.

සාමාන්ය විස්තරය - රේඛාවෙන් චිප්ස් වල හැකියාවන් පිළිබඳ වඩාත් සවිස්තරාත්මක විස්තරයක්.

පින්අවුට් - හැකි සියලුම චිප් පැකේජ සඳහා පින්අවුට් රූප සටහන් (කුමන කකුලේ ඇති පින් එකද).

පින් විස්තරය - එක් එක් පින් එකෙහි අරමුණ සහ හැකියාවන් පිළිබඳ විස්තරය.

මතක සිතියම - අපට මතකයේ ලිපින සිතියමක් අවශ්‍ය නොවනු ඇත, නමුත් සමහර විට එයට ලියාපදිංචි වාරණ ලිපින වගුවක් ද ඇතුළත් වේ.

සිතියම ලියාපදිංචි කරන්න - රෙජිස්ටර් බ්ලොක් වල ලිපින වගුව, රීතියක් ලෙස, දත්ත පත්‍රිකාවේ සහ තුළ පිහිටා ඇත Ref අත්පොත - මාරුවීම් පමණි (ලිපින ඕෆ්සෙට්).

විදුලි ලක්ෂණ - මෙම කොටසෙහි අපි මූලික වශයෙන් උනන්දු වෙමු නිරපේක්ෂ උපරිම ශ්රේණිගත කිරීම්, චිපයකට උපරිම පැටවීම් ලැයිස්තුගත කිරීම. විනාශ කළ නොහැකි Atmega328p මෙන් නොව, බොහෝ MKs ඔබට කටුවලට බරපතල බරක් සම්බන්ධ කිරීමට ඉඩ නොදේ, එය Arduinists සඳහා අප්රසන්න පුදුමයක් බවට පත්වේ.

පැකේජ තොරතුරු - පවතින අවස්ථා වල චිත්‍ර, ඔබේ පුවරු සැලසුම් කිරීමේදී ප්‍රයෝජනවත් වේ.

යොමු අත්පොත ව්‍යුහාත්මකව ඒවායේ මාතෘකාවේ දක්වා ඇති විශේෂිත පර්යන්ත සඳහා කැප වූ කොටස් වලින් සමන්විත වේ. සෑම පරිච්ඡේදයක්ම කොටස් තුනකට බෙදිය හැකිය:

දළ විශ්ලේෂණය, හැදින්වීම, විශේෂාංග - පර්යන්ත හැකියාවන් පිළිබඳ දළ විශ්ලේෂණය;

ක්‍රියාකාරී විස්තරය, භාවිත මාර්ගෝපදේශය හෝ හුදෙක් කොටසෙහි ප්රධාන කොටස - පර්යන්ත උපාංගයේ මූලධර්ම සහ එය භාවිතා කරන ආකාරය පිළිබඳ සවිස්තරාත්මක පෙළ විස්තරයක්;

රෙජිස්ටර් - පාලන රෙජිස්ටර් විස්තරය. GPIO හෝ SPI වැනි සරල අවස්ථාවන්හිදී, පර්යන්ත භාවිතා කිරීම ආරම්භ කිරීමට මෙය ප්‍රමාණවත් විය හැක, නමුත් බොහෝ විට ඔබට තවමත් පෙර කොටස් කියවීමට සිදුවේ.

දත්ත පත්‍රිකා කියවන ආකාරය

දත්ත පත්‍රිකා, පුරුද්දෙන් තොරව, ඒවායේ පරිමාව සහ තේරුම්ගත නොහැකි වචන බහුල වීම නිසා ඔබව බිය ගන්වයි. ඇත්ත වශයෙන්ම, ඔබ ජීවිත හැක් කිහිපයක් දන්නේ නම් සෑම දෙයක්ම එතරම් බියජනක නොවේ.

සකසන්න හොඳ PDF කියවනය. දත්ත පත්‍රිකා ලියා ඇත්තේ කඩදාසි උපදෙස්වල තේජාන්විත සම්ප්‍රදාය තුළ ය; ඒවා මුද්‍රණය කිරීමට, ප්ලාස්ටික් පිටු සලකුණු ඇතුළු කිරීමට සහ මැසීමට විශිෂ්ටයි. ඒවායේ ඇති අධිපෙළ සුළු ප්‍රමාණවලින් නිරීක්ෂණය කෙරේ. වාසනාවකට මෙන්, අවම වශයෙන් ලේඛනයේ ව්යුහය පිටු සලකුණු සහිතව නිර්මාණය කර ඇත, එබැවින් පහසු සංචලනය සහිත සුදුසු පාඨකයෙකු ඉතා අවශ්ය වේ.

දත්ත පත්‍රිකාව Stroustrup ගේ පෙළපොත නොවේ; එහි අඩංගු වේ සියල්ල කියවීමට අවශ්‍ය නැත. ඔබ පෙර උපදෙස් භාවිතා කළේ නම්, පිටු සලකුණු තීරුවේ අපේක්ෂිත කොටස සොයා ගන්න.

දත්ත පත්‍රිකා, විශේෂයෙන් යොමු අත්පොත්, විශේෂිත චිපයක් නොව, නමුත් හැකියාවන් විස්තර කළ හැකිය සම්පූර්ණ රේඛාව. මෙයින් අදහස් කරන්නේ තොරතුරුවලින් අඩක් හෝ තුනෙන් දෙකක් ඔබේ චිපයට සම්බන්ධ නොවන බවයි. TIM7 ලේඛන අධ්යයනය කිරීමට පෙර, ඇතුල් වන්න සාමාන්ය විස්තරය, ඔයා ලඟ එ්ක තියෙනවද?

දැන ගැනීමට ඉංග්රීසි සඳහා ප්රමාණවත් මූලික මට්ටම. දත්ත පත්‍රිකා සාමාන්‍ය ස්වදේශික කථිකයාට නුහුරු පදවලින් අඩක් සහ සරල සම්බන්ධක ව්‍යුහයන්ගෙන් අඩක් සමන්විත වේ. චීන ඉංග්‍රීසියෙන් විශිෂ්ට චීන දත්ත පත්‍රිකා ද ඇත, එහි අඩක් ද පද වන අතර දෙවන භාගය අහඹු වචන සමූහයකි.

ඔබ හමුවුවහොත් නුහුරු වචනය, ඉංග්‍රීසි-රුසියානු ශබ්දකෝෂයක් භාවිතයෙන් එය පරිවර්තනය කිරීමට උත්සාහ නොකරන්න. ඔබ ව්යාකූල නම් හිස්ටරසිස්, එවිට පරිවර්තනය "hysteresis" ඔබ උණුසුම් නොවනු ඇත. අවශ්‍ය සංකල්පය ඇති Google, Stack Overflow, Wikipedia, forums භාවිතා කරන්න උදාහරණ සමඟ සරල වචන වලින් පැහැදිලි කර ඇත.

ඔබ කියවන දේ තේරුම් ගැනීමට හොඳම ක්රමයයි ක්රියාවෙන් පරීක්ෂා කරන්න. එමනිසා, ඔබ තවමත් යමක් වරදවා වටහාගෙන මැජික් දුමාරයක් දුටුවේ නම්, ඔබට හුරුපුරුදු දෝශ නිරාකරණ පුවරුව අතේ තබා ගන්න, නැතහොත් වඩා හොඳ දෙකක්.

ඔබේ දත්ත පත්‍රිකාව ඔබ ළඟ තබා ගැනීම හොඳ පුරුද්දකි කෙනෙකුගේ නිබන්ධනයක් කියවීම නැතහොත් වෙනත් කෙනෙකුගේ පුස්තකාලයක් අධ්‍යයනය කිරීම. එය තුළ ඔබේ ගැටලුවට වඩාත් ප්‍රශස්ත විසඳුමක් සොයා ගැනීමට හැකි වනු ඇත. සහ අනෙක් අතට - ඔබට ලේඛනය සැබවින්ම ක්‍රියා කරන ආකාරය දත්ත පත්‍රිකාවෙන් තේරුම් ගත නොහැකි නම්, එය ගූගල් කරන්න: බොහෝ විට, යමෙකු දැනටමත් සරල වචන වලින් සියල්ල විස්තර කර හෝ GitHub හි පැහැදිලි කේතයක් තබා ඇත.

ශබ්දකෝෂය

ඔබට ඉක්මනින් දත්ත පත්‍රිකාවලට හුරු වීමට උපකාර වන ප්‍රයෝජනවත් වචන සහ සංකේත කිහිපයක්. පහුගිය දවස් දෙකේ මට මතක් වෙච්ච දේවල් එකතු කිරීම් සහ නිවැරදි කිරීම් සාදරයෙන් පිළිගන්නවා.

විදුලිය
වීසීසී, සැබෑ - "ප්ලස්", ආහාර
එදිරිව, වී - "අඩු", පෘථිවිය
දැනට - දැනට
වෝල්ටියතාවය - වෝල්ටියතාවය
ධාරාව ගිල්වීමට - බාහිර පැටවීම සඳහා "බිම" ලෙස වැඩ කරන්න
මූලාශ්ර ධාරාව වෙත - බල බාහිර බර
ඉහළ සින්ක් / මූලාශ්‍ර පින් - පැටවීමට වැඩි "ඉවසීම" සමඟ පින්

IO
එච්, ඉහළ - Vcc පින් මත
L, අඩු - Vss පින් මත
ඉහළ සම්බාධනය, Hi-Z, පාවෙන - පින් මත කිසිවක් නැත, "ඉහළ ප්රතිරෝධය", එය බාහිර ලෝකයට පාහේ නොපෙනේ.
දුර්වල අදින්න, දුර්වල අදින්න - බිල්ට්-අප්/ප්‍ප්ල්-ඩවුන් ප්‍රතිරෝධකය, ආසන්න වශයෙන් 50 kOhm ට සමාන වේ (දත්ත පත්‍රිකාව බලන්න). නිදසුනක් ලෙස, ව්‍යාජ අනතුරු ඇඟවීම් ඇති කරමින්, ආදාන පින් එක වාතයේ එල්ලීම වැළැක්වීමට එය භාවිතා කරයි. දුර්වල - ඔහුට "බාධා කිරීම" පහසු නිසා.
තල්ලු අදින්න - පින් ප්‍රතිදාන මාදිලිය, එය අතර මාරු වේ අධි и අඩු - Arduino වෙතින් නිතිපතා OUTPUT.
විවෘත කාණු - පින් එක විය හැකි ප්‍රතිදාන මාදිලිය නම් කිරීම අඩු, හෝ ඉහළ සම්බාධනය / පාවෙන. එපමණක් නොව, සෑම විටම පාහේ මෙය "සැබෑ" විවෘත කාණුවක් නොවේ; ආරක්ෂිත ඩයෝඩ, ප්රතිරෝධක සහ කුමක් ද ඇත. මෙය හුදෙක් බිම්/කිසිම ප්‍රකාරය සඳහා නම් කිරීමකි.
සැබෑ විවෘත කාණු - නමුත් මෙය සැබෑ විවෘත කාණුවකි: එය විවෘතව තිබේ නම්, පින් එක කෙලින්ම බිමට යොමු කරයි, නැතහොත් එය වසා ඇත්නම් එය අස්ථායීව පවතී. මෙයින් අදහස් කරන්නේ, අවශ්ය නම්, Vcc ට වඩා වැඩි වෝල්ටීයතාවයක් එය හරහා ගමන් කළ හැකි නමුත්, උපරිමය තවමත් කොටසේ දත්ත පත්රිකාවේ සඳහන් කර ඇති බවයි. නිරපේක්ෂ උපරිම ශ්රේණිගත කිරීම්/වෝල්ටීයතා.

අතුරුමුහුණත්
මාලාවක් තුළ - මාලාවක් සම්බන්ධ කර ඇත
දාමයට - අනුක්‍රමික සම්බන්ධතාවයක් භාවිතා කරමින් දාමයකට චිප් එකලස් කරන්න, ප්‍රතිදාන ගණන වැඩි කරන්න.
මාරුවයි - මාරුව, සාමාන්‍යයෙන් බිට් මාරුවක් දක්වයි. පිළිවෙලින්, මාරු කිරීමට и පිටතට මාරු කිරීමට - ටිකෙන් ටික දත්ත ලබා ගැනීම සහ සම්ප්‍රේෂණය කිරීම.
අගුල - බෆරය හරහා බිටු මාරු කරන අතරතුර එය ආවරණය කරන අගුලක්. මාරු කිරීම අවසන් වූ විට, කපාටය විවෘත වන අතර බිටු වැඩ කිරීමට පටන් ගනී.
ඔරලෝසු කිරීමට - ටිකෙන් ටික මාරු කිරීමක් සිදු කරන්න, සියලුම බිටු නිවැරදි ස්ථාන වෙත මාරු කරන්න.
ද්විත්ව බෆරය, සෙවන ලේඛනය, පෙර පැටවීමේ ලේඛනය - ඉතිහාස තනතුරු, ලේඛනයට නව දත්ත පිළිගැනීමට හැකි විය යුතු විට, නමුත් එය යම් කාලයක් දක්වා තබා ගන්න. උදාහරණයක් ලෙස, PWM නිවැරදිව වැඩ කිරීම සඳහා, වත්මන් චක්රය අවසන් වන තුරු එහි පරාමිතීන් (රාජකාරි චක්රය, සංඛ්යාතය) වෙනස් නොවිය යුතුය, නමුත් නව පරාමිතීන් දැනටමත් මාරු කළ හැකිය. ඒ අනුව, වත්මන් ඒවා තබා ඇත සෙවන ලේඛනය, සහ අලුත් ඒවා වැටේ පෙර පැටවීමේ ලේඛනය, අදාල චිප් රෙජිස්ටර් වෙත ලියා ඇත.

සියලු වර්ගවල දේවල්
prescaler - සංඛ්‍යාත ප්‍රෙස්කේලර්
ටිකක් සැකසීමට - බිට් 1 ලෙස සකසන්න
ටිකක් හිස් කිරීමට/නැවත සැකසීමට - බිට් 0 ට නැවත සකසන්න (යලි සකසන්න - STM දත්ත පත්‍රිකා විශේෂාංගය)

ඊළඟට කුමක්ද

සාමාන්‍යයෙන්, STM32 සහ STM8 පිළිබඳ ව්‍යාපෘති තුනක ආදර්ශනයක් සමඟ ප්‍රායෝගික කොටසක් මෙහි සැලසුම් කර ඇත, මෙම ලිපිය සඳහා දත්ත පත්‍රිකා භාවිතා කරමින්, විදුලි බුබුළු, SPI, ටයිමර්, PWM සහ බාධා කිරීම් සමඟ:

ක්ෂුද්‍ර පාලක ඔබේ විනෝදාංශය නම් දත්ත පත්‍රිකා කියවන්නේ කෙසේද සහ ඇයි

නමුත් පෙළ ගොඩක් ඇති නිසා ව්යාපෘති දෙවන කොටස වෙත යවනු ලැබේ.

දත්ත පත්‍රිකා කියවීමේ කුසලතාව ඔබේ විනෝදාංශය සමඟින් ඔබට උපකාර වනු ඇත, නමුත් එය සංසද සහ කතාබස් වලදී සෙසු විනෝදාංශකරුවන් සමඟ සජීවී සන්නිවේදනය ප්‍රතිස්ථාපනය කිරීමට අපහසුය. මෙම කාර්යය සඳහා, ඔබ තවමත් මුලින්ම ඔබේ ඉංග්‍රීසි වැඩි දියුණු කළ යුතුය. එමනිසා, කියවීම අවසන් කළ අයට විශේෂ ත්‍යාගයක් ලැබෙනු ඇත: කේතය භාවිතයෙන් පළමු ගෙවීම සමඟ Skyeng හි නොමිලේ පාඩම් දෙකක් HABR2.

මූලාශ්රය: www.habr.com

අදහස් එක් කරන්න