ක්‍රමලේඛන Attiny2313. Programming Attiny2313 attiny2313 සඳහා වැඩසටහනක් ලියන ආකාරය

AVR RISC ගෘහ නිර්මාණ ශිල්පය:

RISC (අඩු කරන ලද උපදෙස් කට්ටල පරිගණකය). මෙම ගෘහ නිර්මාණ ශිල්පයට විශාල උපදෙස් මාලාවක් ඇත, ඒවායින් බොහොමයක් යන්ත්‍ර චක්‍ර 1කින් ක්‍රියාත්මක වේ. CISC ගෘහ නිර්මාණ ශිල්පය (උදාහරණයක් ලෙස, MCS51) මත පදනම් වූ පෙර ක්ෂුද්‍ර පාලක හා සසඳන විට RISC ක්ෂුද්‍ර පාලක 12 ගුණයකින් වේගවත් බව එයින් කියවේ.

නැතහොත් අපි යම් මට්ටමක කාර්ය සාධනයක් පදනමක් ලෙස ගතහොත්, මෙම කොන්දේසිය සපුරාලීම සඳහා, RISC (Attiny2313) මත පදනම් වූ ක්ෂුද්‍ර පාලකයන්ට 12 ගුණයකින් අඩු උත්පාදක ඔරලෝසු සංඛ්‍යාතයක් අවශ්‍ය වන අතර එමඟින් බලශක්ති පරිභෝජනය සැලකිය යුතු ලෙස අඩු වේ. මේ සම්බන්ධයෙන්, බැටරි බලය භාවිතයෙන් Attiny2313 හි විවිධ උපාංග සැලසුම් කිරීමට හැකි වේ.

මෙහෙයුම් ගබඩා උපාංගය (RAM) සහ දත්ත සහ වැඩසටහන් වල වාෂ්පශීලී නොවන මතකය:

  • 2 KB ස්වයං-ක්‍රමලේඛනය කළ හැකි ෆ්ලෑෂ් ක්‍රමලේඛ මතකයේ 10,000ක් ලිවීමට/මැකීමට පුනරාවර්තන ලබා දිය හැක.
  • පුනරාවර්තන 100,000ක් ලිවීම/මැකීම සැපයිය හැකි EEPROM ලිවිය හැකි දත්ත මතකයේ බයිට් 128ක්.
  • බයිට් 128 SRAM මතකය (කියවීමට පමණක් RAM).
  • වැඩසටහන් කේතය සහ EEPROM දත්ත ආරක්ෂා කිරීම සඳහා කාර්යය භාවිතා කළ හැකිය.

පර්යන්ත ගුණාංග:

  1. ක්ෂුද්ර පාලකය Attiny2313 256 ක උපරිම සංගුණකයක් සහිත වෙන වෙනම ස්ථාපනය කරන ලද ප්‍රෙස්කේලර් සමඟ බිට් අටක ටයිමර් කවුන්ටරයකින් සමන්විත වේ.
  2. වෙනම ප්‍රෙස්කේලර්, ග්‍රහණ සහ සැසඳීමේ පරිපථයක් සහිත දහසය-බිට් ටයිමර්-කවුන්ටරයක් ​​ද ඇත. ටයිමර් කවුන්ටරය බාහිර සංඥා ප්‍රභවයකින් හෝ අභ්‍යන්තර එකකින් ඔරලෝසු කළ හැක.
  3. නාලිකා දෙකක්. අදියර නිවැරදි කිරීම සමඟ වේගවත් PWM මොඩියුලේෂන් සහ PWM මෙහෙයුම් ආකාරයක් ඇත.
  4. අභ්යන්තර ඇනලොග් සංසන්දනකය.
  5. අභ්‍යන්තර ඔස්කිලේටරය සහිත මුර බල්ලා ටයිමරය (වැඩසටහන් කළ හැකි).
  6. Serial Universal Interface (USI).

Attiny2313 හි විශේෂ තාක්ෂණික දර්ශක:


  • නිෂ්ක්‍රීයයි- Idle mode. මෙම අවස්ථාවේදී, මධ්යම ප්රොසෙසරය පමණක් වැඩ කිරීම නතර කරයි. Idle SPI, analog comparator, A/D converter, counter timer, watchdog, හෝ interrupt system වල ක්‍රියාකාරිත්වයට බලපාන්නේ නැත. ඇත්ත වශයෙන්ම, සිදු වන්නේ CPU හරය සහ ෆ්ලෑෂ් මතකයේ සමමුහුර්තකරණය නතර වීමයි. Attiny2313 ක්ෂුද්‍ර පාලකය බාහිර හෝ අභ්‍යන්තර බාධාවකින් Idle මාදිලියේ සිට සාමාන්‍ය ක්‍රියාකාරිත්වයට පැමිණේ.
  • බලය අඩු කිරීම- Attiny2313 ක්ෂුද්‍ර පාලකය ඇත්ත වශයෙන්ම බලශක්ති පරිභෝජනයෙන් ක්‍රියා විරහිත කර ඇති වඩාත්ම ආර්ථිකමය මාදිලිය. මෙම තත්වය තුළ, ඔරලෝසු උත්පාදක යන්ත්රය නතර වන අතර සියලුම පර්යන්තයන් නිවා දමනු ලැබේ. බාහිර මූලාශ්‍රයකින් ලැබෙන බාධා සැකසුම් මොඩියුලය පමණක් සක්‍රියව පවතී. බාධාවක් අනාවරණය වූ විට, Attiny2313 ක්ෂුද්‍ර පාලකය Power-down පිටවී සාමාන්‍ය ක්‍රියාකාරිත්වයට පැමිණේ.
  • සුදානමින් සිටීම- ක්ෂුද්‍ර පාලකය SLEE විධානය භාවිතයෙන් මෙම බල පරිභෝජන පොරොත්තු මාදිලියට මාරු වේ. මෙය වසා දැමීම හා සමානයි, එකම වෙනස වන්නේ ඔරලෝසුව දිගටම ක්‍රියාත්මක වීමයි.

Attiny2313 ක්ෂුද්‍ර පාලකයේ ආදාන-ප්‍රතිදාන වරායන්:

ක්ෂුද්‍ර පාලකය I/O පින් 18 කින් සමන්විත වන අතර, විශේෂිත උපාංගයක් නිර්මාණය කිරීමේදී පැන නගින අවශ්‍යතා මත පදනම්ව වැඩසටහන්ගත කළ හැක. මෙම වරායන්හි නිමැවුම් බෆරවලට සාපේක්ෂව ඉහළ බරකට ඔරොත්තු දිය හැකිය.

  • වරාය A (PA2 - PA0) - බිටු 3. වැඩසටහන්ගත කළ හැකි පුල්-අප් ප්‍රතිරෝධක සහිත ද්විපාර්ශ්වික I/O වරාය.
  • වරාය B (PB7 - PB0) - බිටු 8 යි. වැඩසටහන්ගත කළ හැකි පුල්-අප් ප්‍රතිරෝධක සහිත ද්විපාර්ශ්වික I/O වරාය.
  • වරාය D (PD6 - PD0) - බිටු 7. වැඩසටහන්ගත කළ හැකි පුල්-අප් ප්‍රතිරෝධක සහිත ද්විපාර්ශ්වික I/O වරාය.

සැපයුම් වෝල්ටීයතා පරාසය:

ක්ෂුද්‍ර පාලකය වෝල්ට් 1.8 සිට 5.5 දක්වා සැපයුම් වෝල්ටීයතාවයකින් සාර්ථකව ක්‍රියාත්මක වේ. වත්මන් පරිභෝජනය පාලකයේ මෙහෙයුම් ආකාරය මත රඳා පවතී:

ක්‍රියාකාරී මාදිලිය:

  • 20 µA ඔරලෝසු සංඛ්‍යාතය 32 kHz සහ සැපයුම් වෝල්ටීයතාව 1.8 වෝල්ට්.
  • 300 µA ඔරලෝසු සංඛ්‍යාත 1 MHz සහ සැපයුම් වෝල්ටීයතාව 1.8 වෝල්ට්.

බලශක්ති ඉතිරිකිරීමේ මාදිලිය:

  • වෝල්ට් 1.8 ක සැපයුම් වෝල්ටීයතාවයකින් 0.5 µA.

(3.6 Mb, බාගත්: 5,958)

පද්ධති-ක්‍රමලේඛනය කළ හැකි ෆ්ලෑෂ් මතකය 2 KB සහිත 8-bit AVR ක්ෂුද්‍ර පාලකය

ලක්ෂණ:

  • AVR RISC ගෘහ නිර්මාණ ශිල්පය
  • AVR - උසස් තත්ත්වයේ සහ අඩු බල RISC ගෘහ නිර්මාණ ශිල්පය
    උපදෙස් 120 ක්, ඒවායින් බොහොමයක් එක් ඔරලෝසු චක්රයක් තුළ ක්රියාත්මක වේ
    32 8-bit පොදු කාර්ය ලේඛන
    සම්පුර්ණයෙන්ම ස්ථිතික ගෘහ නිර්මාණ ශිල්පය
  • RAM සහ වාෂ්පශීලී නොවන වැඩසටහන් සහ දත්ත මතකය
    2 KB ස්වයං-ක්‍රමලේඛනය කළ හැකි ෆ්ලෑෂ් ක්‍රමලේඛ මතකය 10,000 ලිවීමේ/මැකීමේ චක්‍රවලට ඔරොත්තු දීමේ හැකියාව ඇත.
    128 බයිට් පද්ධති-ක්‍රමලේඛනය කළ හැකි EEPROM දත්ත මතකය ලිවීමේ/මැකීමේ චක්‍ර 100,000කට ඔරොත්තු දීමේ හැකියාව ඇත
    බිල්ට් SRAM මතකයේ බයිට් 128 (ස්ථිතික RAM)
    ෆ්ලෑෂ් වැඩසටහන් මතකය සහ EEPROM දත්ත මතකය කියවීමට එරෙහිව වැඩසටහන්ගත කළ හැකි ආරක්ෂාව
  • පර්යන්ත ලක්ෂණ
    වෙනම prescaler සහිත එක් 8-bit ටයිමරයක්/කවුන්ටරයක්
    වෙනම prescaler සමඟ එක් 16-bit ටයිමරයක්/කවුන්ටරයක්, සංසන්දනය පරිපථය, ග්‍රහණ පරිපථය සහ PWM නාලිකා දෙකක්
    බිල්ට් ඇනලොග් සංසන්දනකය
    ගොඩනඟන ලද ඔස්කිලේටරය සහිත වැඩසටහන්ගත කළ හැකි මුර බල්ලා ටයිමරය
    USI - Universal Serial Interface
    සම්පූර්ණ ද්විත්ව UART
  • Microcontroller විශේෂ ලක්ෂණ
    තනා ඇති debugWIRE නිදොස්කරණය
    SPI වරාය හරහා පද්ධතිය තුළ වැඩසටහන්කරණය
    බාහිර හා අභ්යන්තර බාධා කිරීම් මූලාශ්ර
    අඩු පරිභෝජන මාතයන් Idle, Power-down සහ Standby
    වැඩි දියුණු කළ බල-ඔන් යළි පිහිටුවීමේ පරිපථය
    වැඩසටහන්ගත කළ හැකි බල බිඳවැටීම් හඳුනාගැනීමේ පරිපථය
    සාදන ලද ක්රමාංකනය කරන ලද උත්පාදක යන්ත්රය
  • I/O වරායන් සහ නිවාස සැලසුම් කිරීම
    වැඩසටහන්ගත කළ හැකි I/O රේඛා 18ක්
    20 pin PDIP, 20 pin SOIC සහ 32 pin MLF පැකේජ
  • සැපයුම් වෝල්ටීයතා පරාසය
    1.8 සිට 5.5 V දක්වා
  • මෙහෙයුම් සංඛ්යාතය
    0 - 16 MHz
  • පරිභෝජනය
    ක්‍රියාකාරී මාදිලිය:
    300 µA 1 MHz සහ 1.8 V සැපයුම් වෝල්ටීයතාවය
    20 µA 32 kHz සහ 1.8 V සැපයුම් වෝල්ටීයතාවය
    අඩු පරිභෝජන මාදිලිය
    1.8 V සැපයුම් වෝල්ටීයතාවයේ දී 0.5 µA

ATtiny2313 වාරණ රූප සටහන:


සාමාන්ය විස්තරය:

ATtiny2313 යනු AVR RISC ගෘහ නිර්මාණ ශිල්පය සහිත අඩු බලැති 8-bit CMOS ක්ෂුද්‍ර පාලකයකි. තනි චක්‍රයක් තුළ උපදෙස් ක්‍රියාත්මක කිරීමෙන්, ATtiny2313 1 MHz ඔරලෝසු වේගයකින් 1 MIPS කාර්ය සාධනයක් ලබා ගන්නා අතර, නිර්මාණකරුට බලයට කාර්ය සාධන අනුපාතය ප්‍රශස්ත කිරීමට ඉඩ සලසයි.

AVR හරය පොහොසත් උපදෙස් මාලාවක් සහ පොදු කාර්ය ලේඛන 32ක් ඒකාබද්ධ කරයි. සියලුම රෙජිස්ටර් 32 අංක ගණිත තාර්කික ඒකකයට (ALU) සෘජුවම සම්බන්ධ වී ඇති අතර, තනි උපදෙසක් ක්‍රියාත්මක කරන අතරතුර ස්වාධීන රෙජිස්ටර් දෙකකට ප්‍රවේශ වීමට ඉඩ සලසයි. එහි ප්‍රතිඵලයක් වශයෙන්, මෙම ගෘහ නිර්මාණ ශිල්පය සම්මත CISC ගෘහ නිර්මාණ ශිල්පයට වඩා දස ගුණයකින් වැඩි කාර්ය සාධනයක් සඳහා ඉඩ සලසයි.

ATtiny2313 හි පහත ලක්ෂණ ඇත: 2 KB ෆ්ලෑෂ් ක්‍රමලේඛගත වැඩසටහන් මතකය, 128 බයිට් EEPROM දත්ත මතකය, 128 බයිට් SRAM (ස්ථිතික RAM), සාමාන්‍ය කාර්ය I/O රේඛා 18, සාමාන්‍ය කාර්ය ලේඛන 32, බිල්ට් සඳහා තනි වයර් අතුරුමුහුණත. debugger, සංසන්දනාත්මක පරිපථ සහිත නම්‍යශීලී ටයිමරයක්/කවුන්ටර දෙකක්, අභ්‍යන්තර සහ බාහිර බාධා කිරීම් මූලාශ්‍ර, වැඩසටහන්ගත කළ හැකි අනුක්‍රමික USART, ආරම්භක තත්ත්‍ව අනාවරකය සහිත විශ්ව අනුක්‍රමික අතුරුමුහුණත, බිල්ට් ඔස්කිලේටරය සහිත වැඩසටහන්ගත කළ හැකි මුරකරු ටයිමරය සහ මෘදුකාංග-ආරම්භ කළ අඩු බල ප්‍රකාර තුනක්. Idle මාදිලියේදී, හරය නතර වේ, නමුත් RAM, ටයිමර්/කවුන්ටර සහ බාධා පද්ධතිය දිගටම ක්‍රියාත්මක වේ. Power-down මාදිලියේදී, රෙජිස්ටර් ඔවුන්ගේ අගයන් රඳවා තබා ගනී, නමුත් උත්පාදක යන්ත්රය නතර වන අතර, ඊළඟ බාධාව හෝ දෘඪාංග යළි පිහිටුවීම දක්වා සියලු උපාංග ක්රියා අක්රිය කරයි. පොරොත්තු ප්‍රකාරයේදී, ප්‍රධාන ඔස්කිලේටරය ක්‍රියාත්මක වන අතර උපාංගයේ ඉතිරි කොටස ක්‍රියා විරහිත වේ. මෙමගින් මයික්‍රොප්‍රොසෙසරය ක්‍රියා විරහිත වූ විට බලය පවත්වා ගනිමින් ඉතා ඉක්මනින් ආරම්භ වීමට ඉඩ සලසයි.

මෙම උපාංගය Atmel වෙතින් ඉහළ ඝනත්ව වාෂ්පශීලී නොවන මතක තාක්ෂණය භාවිතයෙන් නිෂ්පාදනය කර ඇත. ගොඩනඟන ලද ISP ෆ්ලෑෂ් මඟින් ඔබට අනුක්‍රමික SPI අතුරුමුහුණතක් හරහා හෝ සාම්ප්‍රදායික වාෂ්පශීලී නොවන මතක ක්‍රමලේඛකයක් හරහා පද්ධතියේ වැඩසටහන් මතකය ප්‍රතිනිර්මාණය කිරීමට ඉඩ සලසයි. ස්වයං-ක්‍රමලේඛන ෆ්ලෑෂ් මතකය සමඟ 8-bit RISC හරයක් ඒකාබද්ධ කිරීමෙන්, ATtiny2313 යනු මයික්‍රොප්‍රොසෙසර් පද්ධති නිර්මාණකරුට වැඩි නම්‍යශීලී බවක් ලබා දෙන ප්‍රබල ක්ෂුද්‍ර පාලකයකි.

ATTiny2313 ක්ෂුද්‍ර පාලකය යනු පැරණි AT90S2313 ක්ෂුද්‍ර පාලකයේ නව මාලාවක පුනර්ජීවනයකි, එය එහි කාලය තුළ බෙහෙවින් සාර්ථක විය. ATTiny2313 යනු එහි මුතුන් මිත්තන්ගේ වැඩිදියුණු කළ අනුවාදයකි. එහෙත් ඔහුට තරමක් නිහතමානී පරිධියක් ද උරුම විය. එබැවින්, ක්‍රියාකාරීත්වය අනුව, ATTiny2313 නිහතමානී ය. ක්ෂුද්‍ර පාලකය අනුවාද දෙකකින් ලබා ගත හැකිය - සාමාන්‍ය (ATTiny2313) සහ අඩු බලයක් සහිතව (ATTiny2313 වී) අඩු පෝෂණය සඳහා, ඔබ පහත හෙලීමක් සමඟ ගෙවිය යුතුය ඔරලෝසු සංඛ්යාතයක්ෂුද්ර පාලකය (මන්දගාමී ක්රියාකාරිත්වය).

පොදු ලක්ෂණ:

  • ඉහළ මට්ටමේ භාෂාවලින් ක්‍රමලේඛනය සඳහා ප්‍රශස්ත කළ උපදෙස් 120;
  • පොදු කාර්ය ලේඛන 32 (මම මෙයට කැමතියි);
  • සෑම උපදෙස්ම පාහේ උත්පාදක යන්ත්‍රයේ ඔරලෝසු චක්‍රය 1 ක් තුළ ක්‍රියාත්මක වේ, එම නිසා කාර්ය සාධනය MIPS 20 (තත්පරයට මෙහෙයුම් මිලියන 20) කරා ළඟා වේ;
  • වැඩසටහන් සඳහා ෆ්ලෑෂ් මතකය කිලෝබයිට් 2 කි. ෆ්ලෑෂ් මතකය පාලකයෙන් (තමන්ම) සෘජුවම වැඩසටහන්ගත කළ හැක;
  • බයිට් 128 EEPROM (වාෂ්ප නොවන මතකය);
  • බයිට් 128 SRAM (සසම්භාවී ප්‍රවේශ මතකය).

මෙම පර්යන්ත චිපයේ අපට ඇත්තේ කුමක්ද?

  • එක් 8-bit ටයිමරයක්/කවුන්ටරයක්;
  • එක් 16-බිට් ටයිමරයක්/කවුන්ටරයක්;
  • PWM නාලිකා හතරක්;
  • ඇනලොග් සංසන්දකය;
  • මුර බල්ලා ටයිමරය;
  • USI Universal Serial Interface;
  • USART (මෙය COM RS232 පරිගණකයකි).

විශේෂ සුභ පැතුම්:

බලය, සංඛ්යාතය:

1.8 - 5.5V (ATTiny2313V සඳහා) 10 MHz දක්වා
2.7 - 5.5V (ATTiny2313 සඳහා) 20 MHz දක්වා
මෙහෙයුම් මාදිලියේදී, එය 1.8 V සැපයුමක් සහ 1 MHz ප්‍රධාන දෝලක සංඛ්‍යාතයක් සමඟ 230 µA පරිභෝජනය කරයි. බලශක්ති ඉතිරිකිරීමේ මාදිලියේදී, Power-down 1.8V දී 1 µA ට වඩා අඩු පරිභෝජනය කරයි

වැඩසටහන්කරණය

ATTiny2313 වෙනත් සංශෝධනයකින් බේරී ලිපියක් ලබා ගත්තේය අවසානයේ දී. නවෝත්පාදන අතර එය සටහන් කළ යුතුය:
- බාහිර බාධා කිරීම් සියලු කකුල් මත දිස් විය.
- සාමාන්ය සහ අඩු වෝල්ටීයතා බල සැපයුම අතර වෙන්වීම ඉවත් කර ඇත. ATTiny2313A 1.8 සිට 5.5V දක්වා බලගැන්විය හැකි අතර, එය අවශ්‍ය වන්නේ 4 MHz (1.8 V සඳහා) සිට 20 MHz දක්වා සංඛ්‍යාත සීමාවන්ට අනුකූල වීම පමණි.
- වත්මන් පරිභෝජනය සැලකිය යුතු ලෙස අඩු වී ඇත, සාමාන්ය මාදිලියේ සහ බලශක්ති ඉතිරිකිරීමේ ආකාර දෙකෙහිම - පිළිවෙලින් 190 µA සහ 0.1 µA.
එපමණක් නොව, නවතම සංශෝධනයේ ප්‍රතිඵලයක් ලෙස, ATTiny2313 වැඩිමහල් සහෝදරයෙකු වන ATTiny4313 (A අකුරෙන් තොරව) අත්පත් කර ගත්තේය. වැඩිමහල් සහෝදරයා ATTiny2313A ට සමාන වේ, මතකයේ දෙගුණයක් හැර (4 kB Flash, 256 bytes EEPROM, 256 bytes SRAM). මෙම වෙනස්කම් පෙන්නුම් කරන්නේ මෙම ක්ෂුද්‍ර පාලකයට අඛණ්ඩව සහය දැක්වීමට Atmel හි අභිප්‍රායයන්ය.

ATTiny2313A සහ ATTiny4313 හි නව අනුවාදවල පවතින දුර්වල බව සහ තේරුම්ගත නොහැකි මිල හේතුවෙන්, මගේ උපාංග ATTiny2313 හි පැරණි අනුවාදය මත සංවර්ධනය කෙරේ. නමුත් නව අනුවාදයන් පැරණි ඒවා සමඟ අනුකූල වන බැවින්, න්යායාත්මකව, ස්ථිරාංග නව ක්ෂුද්ර පාලක මත වැඩ කළ යුතුය.

නිගමන:

ඔක්කොම වගේ AVR ක්ෂුද්‍ර පාලක ATTiny2313 මාලාව ඵලදායී සහ ලාභදායී වේ. එහි පුවරු පිරිසැලසුම සහ පෑස්සීමට පහසු වන SOIC නඩුවක් ඇත. කකුල් අතර දුර සාපේක්ෂව විශාලයි (ඔබට යාබද කකුල් අතර පුවරුවේ හෝඩුවාවක් තැබීමට පවා කළමනාකරණය කළ හැකිය). ඉගෙනීමට පහසුය. රුසියානු භාෂාවෙන් බොහෝ සාහිත්‍ය ඇත. එහි පූර්වගාමියා වූ AT90S2313 හි විශාල ජනප්‍රියතාවය හේතුවෙන්, පුනරාවර්තනය සඳහා ජාලයේ බොහෝ රසවත් පරිපථ සංවර්ධනය කර ඇත. වාණිජමය වශයෙන් පුළුල් ලෙස ලබා ගත හැකිය. මිළ අඩුයි. ක්ෂුද්‍ර පාලක අධ්‍යයනය ආරම්භ කිරීමට, මෙය විය යුතු ස්ථානයයි. අඩුපාඩු අතර, අද තරමක් නිහතමානී පර්යන්තයන් සඳහන් කිරීම වටී. සහ අවාසියක් ලෙස, SOIC නඩුව ටිකක් විශාලයි (මම දැනටමත් nitpicking වුවද). කුඩා මතක ප්‍රමාණයක් ඔබට ATTiny2313 හි විශාල පරිමාණ ව්‍යාපෘති නිර්මාණය කිරීමට ඉඩ නොදේ. සාමාන්යයෙන්, විශේෂ පර්යන්ත අවශ්ය නොවන කුඩා ව්යාපෘති සඳහා හොඳ ඉහළ කාර්ය සාධන පාලකයක්. හොඳම ලබා ගැනීමේ හැකියාව සහ අඩු පිරිවැය හේතුවෙන් මගේ උපාංගවල එය පුළුල් ලෙස භාවිතා කිරීමට මම අදහස් කරමි.

අද අපි සරල ක්ෂුද්‍ර පාලකයක් භාවිතා කිරීමට උත්සාහ කරමු ATtiny2313අක්ෂර 16 ක පේළි දෙකක් අඩංගු අක්ෂර LCD සංදර්ශකයක් එයට සම්බන්ධ කරන්න.

අපි සංදර්ශකය සම්බන්ධ කරන්නෙමු සම්මත ආකාරයෙන් 4-බිට් මාර්ගය.

පළමුව, අපි පෙර පාඩම් වලින් සංදර්ශකය ගැන දැනටමත් හොඳින් දන්නා බැවින්, ඇත්ත වශයෙන්ම, ක්ෂුද්‍ර පාලකය සමඟ ආරම්භ කරමු.

අපි පාලක දත්ත පත්‍රිකාව විවෘත කරමු ATtiny2313සහ අපි බලමු එහි පින්අවුට් එක

මෙම පාලකය අවස්ථා දෙකකින් පවතින බව අපට පෙනේ, නමුත් මම එය DIP පැකේජයකින් ලබා ගත් බැවින්, අපි මෙම නඩුවේ මෙම විශේෂිත අනුවාදය සලකා බලමු, සහ ප්‍රතිපත්තිමය වශයෙන්, ඒවා පෙනුමෙන් හැර බොහෝ වෙනස් නොවේ, එබැවින් අංකය කෙසේද කකුල් එක සමාන වේ - 20 බැගින්.

ATMega8 පාලකයේ කකුල් 28 හා සසඳන විට කකුල් 20 ක් ඇති බැවින්, අප දිගින් දිගටම වැඩ කරමින් සිටින අතර දිගටම වැඩ කරනු ඇත, එවිට, ඒ අනුව, අඩු හැකියාවන් ද ඇත.

ප්‍රතිපත්තිමය වශයෙන්, ATmega8 සතුව තිබූ සියල්ල මෙහි ඇත, එකම දෙය නම් වරාය නියපොතු අඩු වීමයි. නමුත් අප ඉදිරියේ ඇති කාර්යය වන්නේ වෙනත් පාලකයක් සමඟ SPI බසය හරහා එය සම්බන්ධ කිරීමට උත්සාහ කිරීම නිසා, මෙය අපව බොහෝ කලකිරීමට පත් නොකරයි.

වෙනත් වෙනස්කම් ඇත, නමුත් ඒවා සුළු වන අතර අවශ්‍ය පරිදි අපි ඒවා දැන හඳුනා ගන්නෙමු.

අපි මේ වගේ පරිපථයක් එකතු කරමු (රූපය විශාල කර බැලීමට පින්තූරය මත ක්ලික් කරන්න)

සංදර්ශකය D වරායේ අල්ෙපෙනති වලට සම්බන්ධ කර ඇත. PD1 සහ PD2 පාලන ආදාන වලට වන අතර ඉතිරිය D4-D7 දර්ශණ මොඩියුලයේ අල්ෙපෙනති වලට සම්බන්ධ වේ.

අපි TINY2313_LCD නමින් ව්‍යාපෘතියක් නිර්මාණය කරමු, සංදර්ශකය Atmega8 වෙත සම්බන්ධ කිරීමේ ව්‍යාපෘතියේ ප්‍රධාන මොඩියුලය හැර අනෙක් සියල්ල එයට මාරු කරමු.

ඇත්ත වශයෙන්ම, සමහර දේවල් නැවත කිරීමට අවශ්ය වනු ඇත. මෙය සිදු කිරීම සඳහා, ඔබ කුමන කකුලට සම්බන්ධ වී ඇත්දැයි හොඳින් අධ්‍යයනය කළ යුතුය. සංදර්ශකයේ E බසය PD2 වෙත සම්බන්ධ කර ඇති අතර RS බස් රථය PD1 වෙත සම්බන්ධ කර ඇත, එබැවින් අපි ගොනුවේ වෙනස්කම් සිදු කරමු. lcd.h

#නිර්වචනය කරන්නe1PORTD|=0b0000 01 00 // පේළිය E සිට 1 දක්වා සකසන්න

#නිර්වචනය කරන්නe0PORTD&=0b1111 10 11 // පේළිය E සිට 0 දක්වා සකසන්න

#නිර්වචනය කරන්නරු.1PORTD|=0b00000 01 0 // RS රේඛාව 1 ට සකසන්න (දත්ත)

#නිර්වචනය කරන්නරුපියල් 0PORTD&=0b11111 10 1 // RS රේඛාව 0 ලෙස සකසන්න (විධානය)

තද අකුරු වලින් අපට පෙනෙන පරිදි, අපට එවැනි දරුණු වෙනස්කම් සිදුවී නොමැත.

දැන් තොරතුරු ආදාන. මෙන්න අපි කකුල් PD3-PD6 භාවිතා කරමු, එනම්, Atmega8 සමඟ ඇති සම්බන්ධතාවයට සාපේක්ෂව ඒවා 1 ලක්ෂයකින් මාරු කරනු ලැබේ, එබැවින් අපි ගොනුවේ යමක් නිවැරදි කරන්නෙමු. lcd.cකාර්යයේ sendhalfbyte

PORTD&=0b 1 0000 111; // ආදාන DB4-DB7 පිළිබඳ තොරතුරු මකන්න, ඉතිරිය තනි කරන්න

නමුත් එය පමණක් නොවේ. අපි කලින් සම්ප්‍රේෂණය කළ දත්ත 4 කින් මාරු කළා, නමුත් දැන්, ඉහත වෙනස්කම් නිසා, අපට එය මාරු කිරීමට සිදු වන්නේ 3 කින් පමණි. එබැවින්, එම කාර්යයේදීම අපි පළමු පේළිය නිවැරදි කරන්නෙමු.

c<<=3 ;

වෙනස්කම් එච්චරයි. එකඟ වන්න, ඔවුන් එතරම් විශිෂ්ට නොවේ! මෙය සාක්ෂාත් කරගනු ලබන්නේ අප සෑම විටම විශ්ව කේතය ලිවීමට සහ සාර්ව ආදේශක භාවිතා කිරීමට උත්සාහ කිරීමෙනි. අපි මේ සඳහා එකවර කාලය ගත නොකළේ නම්, අපගේ පුස්තකාලයේ සෑම කාර්යයකම පාහේ කේතය නිවැරදි කිරීමට අපට සිදුවනු ඇත.

ප්‍රධාන මොඩියුලයේ, අපි වරාය D ආරම්භ කිරීම ස්පර්ශ නොකරමු; 12 පාඩමේ මෙන් මුළු මොඩියුලයම ප්‍රතිදාන තත්වයට යාමට ඉඩ දෙන්න.

අපි ව්‍යාපෘතිය එකලස් කර ප්‍රථමයෙන් ප්‍රෝටියුස් හි ප්‍රති result ලය බැලීමට උත්සාහ කරමු, මන්ද මමත් ඒ සඳහා ව්‍යාපෘතියක් කළ බැවින් එය Atmel Studio සඳහා වන ව්‍යාපෘතිය සමඟ අමුණා ඇති ලේඛනාගාරයේ ද ඇත.

සෑම දෙයක්ම අපට විශිෂ්ටයි! ඔබට එක් පාලකයක් සඳහා තවත් ව්‍යාපෘතියක් ඉක්මනින් ප්‍රතිනිර්මාණය කළ හැකි ආකාරය මෙයයි.

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

මෙන්න සම්පූර්ණ රූප සටහන

මෙහි සෑම දෙයක්ම සම්මතය. පුල්-අප් ප්‍රතිරෝධය රීසෙට් යනාදිය.

දැන්, පාලකය avrdude හි දැල්වීමට පෙර, අපි පාලකය තෝරා එහි ෆ්ලෑෂ් මතකය කියවිය යුතුය

ඉන්පසු FUSES ටැබ් එකට ගොස් ෆියුස් නිවැරදිව සකසන්න. අපට ක්වාර්ට්ස් අනුනාදකයක් නොමැති බැවින්, අපි මේ ආකාරයෙන් ෆියුස් ස්ථාපනය කරමු


ඉහල