Atmel β ΠΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΡ
ΠΠ°ΡΠ΅ΡΠΈΠ°Π» ΠΈΠ· ΠΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΠΈ β ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠΉ ΡΠ½ΡΠΈΠΊΠ»ΠΎΠΏΠ΅Π΄ΠΈΠΈ
Π’Π΅ΠΊΡΡΠ°Ρ Π²Π΅ΡΡΠΈΡ ΡΡΡΠ°Π½ΠΈΡΡ ΠΏΠΎΠΊΠ° Π½Π΅ ΠΏΡΠΎΠ²Π΅ΡΡΠ»Π°ΡΡ ΠΎΠΏΡΡΠ½ΡΠΌΠΈ ΡΡΠ°ΡΡΠ½ΠΈΠΊΠ°ΠΌΠΈ ΠΈ ΠΌΠΎΠΆΠ΅Ρ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΎΡΠ»ΠΈΡΠ°ΡΡΡΡ ΠΎΡ Π²Π΅ΡΡΠΈΠΈ, ΠΏΡΠΎΠ²Π΅ΡΠ΅Π½Π½ΠΎΠΉ 5 ΠΈΡΠ½Ρ 2017; ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΡΡΠ΅Π±ΡΡΡ 5 ΠΏΡΠ°Π²ΠΎΠΊ. Π’Π΅ΠΊΡΡΠ°Ρ Π²Π΅ΡΡΠΈΡ ΡΡΡΠ°Π½ΠΈΡΡ ΠΏΠΎΠΊΠ° Π½Π΅ ΠΏΡΠΎΠ²Π΅ΡΡΠ»Π°ΡΡ ΠΎΠΏΡΡΠ½ΡΠΌΠΈ ΡΡΠ°ΡΡΠ½ΠΈΠΊΠ°ΠΌΠΈ ΠΈ ΠΌΠΎΠΆΠ΅Ρ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΎΡΠ»ΠΈΡΠ°ΡΡΡΡ ΠΎΡ Π²Π΅ΡΡΠΈΠΈ, ΠΏΡΠΎΠ²Π΅ΡΠ΅Π½Π½ΠΎΠΉ 5 ΠΈΡΠ½Ρ 2017; ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΡΡΠ΅Π±ΡΡΡ 5 ΠΏΡΠ°Π²ΠΎΠΊ.Atmel CorporationΒ β ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Ρ ΠΏΠΎΠ»ΡΠΏΡΠΎΠ²ΠΎΠ΄Π½ΠΈΠΊΠΎΠ²ΡΡ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ², ΠΎΡΠ½ΠΎΠ²Π°Π½Π° Π² 1984 Π³ΠΎΠ΄Ρ. ΠΠ΄ΠΈΠ½ ΠΈΠ· Π»ΠΈΠ΄Π΅ΡΠΎΠ² ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²Π° ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠΎΠ² (MCS-51, ARM, AVR, AVR32). Π’Π°ΠΊΠΆΠ΅ ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ ΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ Π½Π΅Π±ΠΎΠ»ΡΡΠΈΠ΅ ΠΌΠΎΠ΄ΡΠ»ΠΈ ΡΠ½Π΅ΡΠ³ΠΎΠ½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ Π΄Π»Ρ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΡΡ ΠΈΠ·Π΄Π΅Π»ΠΈΠΉ, ΠΠΠΠ‘, ΡΠΈΡΡΠΎΠ²ΡΠ΅ ΠΌΠΈΠΊΡΠΎΡΡ Π΅ΠΌΡ-ΡΠ°Π΄ΠΈΠΎΠΏΡΠΈΡΠΌΠ½ΠΈΠΊΠΈ ΠΈ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡΠΈΠΊΠΈ, ΡΠΊΠ°Π½Π΅ΡΡ ΠΎΡΠΏΠ΅ΡΠ°ΡΠΊΠΎΠ² ΠΏΠ°Π»ΡΡΠ΅Π². ΠΠΎΠΌΠΏΠ°Π½ΠΈΡ Π΄Π»Ρ ΡΠ²ΠΎΠΈΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈΡΡ ΡΠΈΡΡΠ΅ΠΌΡ Π½Π° ΠΊΡΠΈΡΡΠ°Π»Π»Π΅, ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΡΡΡΡ Π·Π°ΡΡΠ΅Π±ΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ. ΠΡΠΎΠ΄ΡΠΊΡΠΈΡ Atmel ΡΠΈΡΠΎΠΊΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ Π² ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ½ΡΡ ΡΠ΅ΡΡΡ , ΠΏΡΠΎΠΌΡΡΠ»Π΅Π½Π½ΠΎΡΡΠΈ, ΠΌΠ΅Π΄ΠΈΡΠΈΠ½Π΅, ΡΠ²ΡΠ·ΠΈ, Π°Π²ΡΠΎΠΌΠΎΠ±ΠΈΠ»ΡΡ , ΠΊΠΎΡΠΌΠΎΡΠ΅, Π²ΠΎΠ΅Π½Π½ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ , Π° ΡΠ°ΠΊΠΆΠ΅ ΠΊΡΠ΅Π΄ΠΈΡΠ½ΡΡ ΠΊΠ°ΡΡΠ°Ρ .
Π‘ΡΠΈΠ²Π΅Π½ ΠΠ°ΡΠ± β ΠΏΡΠ΅Π·ΠΈΠ΄Π΅Π½Ρ ΠΈ Π³Π΅Π½Π΅ΡΠ°Π»ΡΠ½ΡΠΉ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡ ΠΊΠΎΡΠΏΠΎΡΠ°ΡΠΈΠΈ.
ΠΠΊΡΠΈΠΈ ΠΏΡΠΎΠ΄Π°ΡΡΡΡ Π½Π° Π±ΠΈΡΠΆΠ΅, NASDAQ: ATML.
ΠΠ΅ΡΠ²ΡΠΉ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ Atmel ΠΏΠΎΡΠ²ΠΈΠ»ΡΡ Π² 1993 Π³ΠΎΠ΄Ρ ΠΈ Π±ΡΠ» ΠΎΡΠ½ΠΎΠ²Π°Π½ Π½Π° ΠΊΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΠΎΠΌ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ½ΠΎΠΌ ΡΠ΄ΡΠ΅ Intel 8051. ΠΡΠΎΠ΄ΡΠΊΡΠΈΡ Atmel Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ MCS-51, AT91SAM ΠΈ AT91CAP (ΠΎΡΠ½ΠΎΠ²Π°Π½Ρ Π½Π° ΡΠ΄ΡΠ΅ ARM), ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ Π½Π° ΠΈΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ ΡΠ΄ΡΠ°Ρ Atmel AVR ΠΈ AVR32, ΡΠ°Π΄ΠΈΠΎΡΠ°ΡΡΠΎΡΠ½ΡΠ΅ (RF) ΡΡΡΡΠΎΠΉΡΡΠ²Π°, ΠΌΠΈΠΊΡΠΎΡΡ Π΅ΠΌΡ ΠΏΠ°ΠΌΡΡΠΈ ΡΠΈΠΏΠΎΠ² EEPROM ΠΈ ΡΠ»Π΅Ρ (Π²ΠΊΠ»ΡΡΠ°Ρ ΠΏΠ°ΠΌΡΡΡ, ΠΎΡΠ½ΠΎΠ²Π°Π½Π½ΡΡ Π½Π° DataFlash), ΠΈ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π΄ΡΡΠ³ΠΈΡ ΠΏΡΠΎΠ΄ΡΠΊΡΠΎΠ² ΡΡΠΎΠΉ ΠΆΠ΅ ΠΎΡΡΠ°ΡΠ»ΠΈ.
Atmel ΠΏΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠ²ΠΎΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΠΊΠ°ΠΊ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠ΅, ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΡΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠΎΠ²Π°Π½Π½ΡΠ΅. Π Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠ»ΡΡΠ°ΡΡ Atmel ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈΡΡ SoC-ΡΠ΅ΡΠ΅Π½ΠΈΡ.
-
ΠΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ Atmel ATMEGA32
-
ΠΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ Atmel AT90S2333
Π Π³ΠΎΠ΄Ρ ΠΊΡΠΈΠ·ΠΈΡΠ° Π² 2008 Π³ΠΎΠ΄Ρ Microchip ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈΠ»Π° Atmel ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡΡΡ. ΠΠΎ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΡΠ°ΠΊ ΠΈ Π½Π΅ ΡΠΌΠΎΠ³Π»ΠΈ Π΄ΠΎΠ³ΠΎΠ²ΠΎΡΠΈΡΡΡΡ.
- 2 ΠΎΠΊΡΡΠ±ΡΡ ΡΠΈΡΠΌΡ Microchip ΠΈ ON Semiconductor ΡΠ΄Π΅Π»Π°Π»ΠΈ ΠΏΡΠ±Π»ΠΈΡΠ½ΠΎΠ΅ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΎ ΠΏΠΎΠΊΡΠΏΠΊΠ΅ Atmel[1].
- 29 ΠΎΠΊΡΡΠ±ΡΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ Atmel ΠΎΡΠΊΠ»ΠΎΠ½ΠΈΠ»Π° ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΉ Microchip ΠΈ ON Semiconductor
- 13 Π½ΠΎΡΠ±ΡΡ ΡΠΈΡΠΌΡ Microchip ΠΈ ON Semiconductor ΠΎΠ±ΡΡΠ²ΠΈΠ»ΠΈ ΠΎ Π½Π°ΡΠ°Π»Π΅ Π½Π΅Π΄ΡΡΠΆΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ³Π»ΠΎΡΠ΅Π½ΠΈΡ Atmel[4].
- 18 Π½ΠΎΡΠ±ΡΡ ΡΠΈΡΠΌΡ Microchip ΠΈ ON Semiconductor ΠΎΡΠΊΠ°Π·Π°Π»ΠΈΡΡ ΠΎΡ Π½Π΅Π΄ΡΡΠΆΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ³Π»ΠΎΡΠ΅Π½ΠΈΡ Atmel[5].
20 ΡΠ΅Π½ΡΡΠ±ΡΡ 2015 Π³ΠΎΠ΄Π° Dialog Semiconductor Π·Π°ΡΠ²Π»ΡΠ΅Ρ ΠΎ Π½Π°ΠΌΠ΅ΡΠ΅Π½ΠΈΠΈ ΠΊΡΠΏΠΈΡΡ Atmel[6].
Π ΡΠ½Π²Π°ΡΠ΅ 2016 Π³ΠΎΠ΄Π° ΡΠΈΡΠΌΠ° Microchip ΠΏΠΎΠΊΡΠΏΠ°Π΅Ρ Atmel Π·Π° 3,56Β ΠΌΠ»ΡΠ΄ Π΄ΠΎΠ»Π»Π°ΡΠΎΠ²[7], Atmel Π²ΡΠΏΠ»Π°ΡΠΈΠ²Π°Π΅Ρ Π½Π΅ΡΡΡΠΎΠΉΠΊΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Dialog Semiconductor Π² ΡΠ°Π·ΠΌΠ΅ΡΠ΅ 137,3Β ΠΌΠ»Π½ Π΄ΠΎΠ»Π»Π°ΡΠΎΠ².
- ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΊΠΎΠ½ΠΊΡΡΠ΅Π½ΡΡ Atmel
Atmel ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ: ΠΏΠΎΠΌΠΎΡΠ½ΠΈΠΊΠΈ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ°ΠΌ
ΠΠΎΠΌΠΏΠ°Π½ΠΈΡ Atmel β ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Ρ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΡ ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ² ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠΎΠ², ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ ΠΈΠΌΠ΅Π΅Ρ ΡΠ²ΠΎΠΈ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ. ΠΠ½ΡΠ΅ΡΠ΅ΡΠ΅Π½ ΡΡΠΎΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Ρ ΡΠ΅ΠΌ, ΡΡΠΎ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ Atmel ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²Π° AVR ΠΎΡΠ΅Π½Ρ ΠΏΠΎΠΏΡΠ»ΡΡΠ½Ρ Π² ΡΡΠ΅Π΄Π΅ ΡΠ°Π΄ΠΈΠΎΠ»ΡΠ±ΠΈΡΠ΅Π»Π΅ΠΉ. ΠΡΠΎΠΌΠ΅ AVR ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠΎΠ² ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ Π²ΡΠΏΡΡΠΊΠ°Π΅Ρ ΡΡΡΡΠΎΠΉΡΡΠ²Π° Ρ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠΎΠΉ ARM ΠΈ i8051.
ΠΠΎΠΏΡΠ»ΡΡΠ½ΠΎΡΡΡ ΡΡΡΡΠΎΠΉΡΡΠ² ΠΎΠ±ΡΡΠ»ΠΎΠ²Π»Π΅Π½Π° ΠΎΠ³ΡΠΎΠΌΠ½ΡΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ Π»ΠΈΡΠ΅ΡΠ°ΡΡΡΡ ΠΏΠΎ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ°ΠΌ AVR. ΠΠ°ΠΆΠ΄ΡΠΉ ΠΌΠΎΠΆΠ΅Ρ ΠΎΡΠ²ΠΎΠΈΡΡ Ρ Π½ΡΠ»Ρ ΠΈ ΠΏΠΈΡΠ°ΡΡ ΠΏΡΠΎΡΡΡΠ΅ ΠΊΠΎΠ΄Ρ Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΌ Π½Π°Π±ΠΎΡΠΎΠΌ Π·Π½Π°Π½ΠΈΠΉ.
ΠΠ»Π°ΡΠ° Atmel AVRΠΠ°ΠΊΠΈΠ΅ Π±ΡΠ²Π°ΡΡ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ Atmel
ΠΠ°ΡΠ½Π΅ΠΌ Ρ ΡΠ°ΠΌΠΎΠ³ΠΎ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΎΠ³ΠΎ, Π΄Π»Ρ ΠΎΡΠ²ΠΎΠ΅Π½ΠΈΡ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠΎΠ² Π² ΡΠ΅Π»ΠΎΠΌ, β Atmel AVR. ΠΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°Π·Π΄Π΅Π»ΠΈΡΡ Π½Π° Π΄Π²Π° Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ:
- 8-Π±ΠΈΡΠ½ΡΠ΅ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ.
- 32-Π±ΠΈΡΠ½ΡΠ΅ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ.
Π‘ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎ ΠΈ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΡ Ρ Π±ΠΎΠ»Π΅Π΅ ΡΡΠ°ΡΡΠΌΠΈ, Π° ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ Ρ Classic Π½Π° Mega ΠΈ Tiny ΡΡΠ΅Π±ΡΠ΅Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΡ ΡΡΡΠ΄ΠΎΠ·Π°ΡΡΠ°Ρ ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°. Π‘ΡΠ΅Π΄ΠΈ ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²Π° ΠΎΡΠΎΠ±Π΅Π½Π½ΡΡ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΎΡΡΡ Π·Π°ΡΠ»ΡΠΆΠΈΠ» ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ Ρ ΠΌΠ°ΡΠΊΠΈΡΠΎΠ²ΠΊΠΎΠΉ Atmega 328p, ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΠΌΡΠΉ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΡ ΠΏΠ»Π°ΡΠ°Ρ Arduino. ΠΠΎΡΡΠΈ Π²ΡΠ΅ ΠΎΠ½ΠΈ ΠΈΠΌΠ΅ΡΡ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ½Π΅ΡΠ³ΠΎΠ½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΡΠΌ ΡΠΈΡΠ»ΠΎΠΌ ΡΠΈΠΊΠ»ΠΎΠ² Π·Π°ΠΏΠΈΡΠΈ (Π΄ΠΎ 100Β 000) β EEPROM.
Π’Π°ΠΊΠ°Ρ ΠΏΠ°ΠΌΡΡΡ Π½ΡΠΆΠ½Π° Π½Π΅ Π΄Π»Ρ ΡΠ΅ΠΊΡΡΠΈΡ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ Π±ΡΡΡΡΠΎ Π·Π°ΠΊΠΎΠ½ΡΠΈΡΡΡ Π΅Ρ ΡΠ΅ΡΡΡΡ, Π° Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ Π² Π΄ΠΎΠ»Π³ΠΎΡΡΠΎΡΠ½ΠΎΠΉ ΠΏΠ΅ΡΡΠΏΠ΅ΠΊΡΠΈΠ²Π΅. ΠΠ½Π΅ΡΠ³ΠΎΠ½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡ EEPROM ΠΏΠ°ΠΌΡΡΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΡΠΎΡ ΡΠ°Π½Π½ΠΎΡΡΡ Π²ΡΠ΅ΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΏΠΎΡΠ»Π΅ ΠΎΠ±Π΅ΡΡΠΎΡΠΈΠ²Π°Π½ΠΈΡ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ°.
Π‘Π΅ΠΌΠ΅ΠΉΡΡΠ²ΠΎ Atmel Smart Π±Π°Π·ΠΈΡΡΠ΅ΡΡΡ Π½Π° Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ΅ ARM. ΠΠΎΠΌΠΏΠ°Π½ΠΈΡ ΠΏΡΠ°Π²ΠΎΠΎΠ±Π»Π°Π΄Π°ΡΠ΅Π»Ρ ARM ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎ ΠΏΡΠΎΠ΄Π°Π΅Ρ Π»ΠΈΡΠ΅Π½Π·ΠΈΠΈ Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠΎΠ² ΡΠΎ ΡΠ²ΠΎΠ΅ΠΉ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠΎΠΉ ΡΠ°Π·Π½ΡΠΌ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠΌ, ΡΡΠΎ ΡΡΠΊΠΎΡΡΠ΅Ρ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΈ ΠΏΠΎΠΏΡΠ»ΡΡΠΈΠ·Π°ΡΠΈΡ ΠΏΠ΅ΡΠ²ΡΡ . Π‘ΡΠΎΠΈΡ ΠΎΡΠΌΠ΅ΡΠΈΡΡ ΡΡΠΊΠΎΠ³ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΠ΅Π»Ρ β ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ AT91SAM3X8E, ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ΅ΡΠ΄ΡΠ΅ΠΌ Arduino DUE, 32-Π±ΠΈΡΠ°. ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΡΠ΅Π½Ρ Π»Π΅Π³ΠΊΠΎ Π½Π°ΡΠ°ΡΡ Π·Π½Π°ΠΊΠΎΠΌΡΡΠ²ΠΎ Ρ ΡΠ°ΠΊΠΎΠΉ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠΎΠΉ ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΡ ΡΡΡΡΠΎΠΉΡΡΠ² ΡΠ½ΡΡΠ·ΠΈΠ°ΡΡΠ°ΠΌ ΡΠ»Π΅ΠΊΡΡΠΎΠ½ΠΈΠΊΠΈ. Atmel ARM ΠΏΠΎ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠ°ΠΌ ΠΏΡΠ΅Π²ΠΎΡΡ ΠΎΠ΄ΠΈΡ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠΎΠ² Atmel AVR
Π‘Π΅ΠΌΠ΅ΠΉΡΡΠ²ΠΎ Atmel 8051 β ΠΎΡΠ½ΠΎΠ²Π°Π½ΠΎ Π½Π° ΠΏΠΎ-Π½Π°ΡΡΠΎΡΡΠ΅ΠΌΡ Π»Π΅Π³Π΅Π½Π΄Π°ΡΠ½ΠΎΠΉ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ΅. Intel 8051 ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΠΏΠ΅ΡΠ²ΡΡ ΠΌΠ°ΡΡΠΎΠ²ΡΡ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠΎΠ² Ρ ΡΠΈΡΠΎΡΠ°ΠΉΡΠ΅ΠΉ ΡΡΠ΅ΡΠΎΠΉ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ. ΠΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ Π²ΡΡΠΎΠΊΠΎΠΏΡΠ΅ΡΠΈΠ·ΠΈΠΎΠ½Π½ΡΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²Π° Ρ ΠΎΠ³ΡΠΎΠΌΠ½ΡΠΌ Π±ΡΡΡΡΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ΠΌ, ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ ΡΡΠ°Π²Π½ΠΈΠΌΡΠΌ Ρ Π±ΡΡΡΡΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ΠΌ ΡΡ Π΅ΠΌ Π½Π° Π»ΠΎΠ³ΠΈΠΊΠ΅. Π Π»ΠΈΠ½Π΅ΠΉΠΊΠ΅ Π΅ΡΡΡ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ, ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠ΅ Π½Π° ΡΠ°ΡΡΠΎΡΠ°Ρ Π² 100 ΠΠΡ, ΠΏΡΠΈ ΡΡΠΎΠΌ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΠΈΠ΅ 100 ΠΌΠΈΠ»Π»ΠΈΠΎΠ½ΠΎΠ² ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π² ΡΠ΅ΠΊΡΠ½Π΄Ρ, Π° ΡΡΠΎ ΠΎΡΠ»ΠΈΡΠ½ΡΠ΅ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ Π΄Π»Ρ ΡΡΠΎΠΉ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄ΠΎΠ±ΠΈΡΡΡΡ Π±ΡΡΡΡΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ Π² Π΄ΠΎΠ»ΡΡ ΠΌΠΈΠΊΡΠΎΡΠ΅ΠΊΡΠ½Π΄.
Π‘ΠΏΠΎΡΠΎΠ±Ρ ΡΠ²ΡΠ·ΠΈ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ° ΠΈ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ° Atmel
Π§Π°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΡΠ²ΡΠ·Ρ Ρ ΠΠ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΡΡ ΡΠ΅ΡΠ΅Π· COM-ΠΏΠΎΡΡ. ΠΠ° ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ°Ρ ΠΈ Π½ΠΎΡΡΠ±ΡΠΊΠ°Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΠΎΡΡΠ° Π½Π΅Ρ. ΠΡΠΎ Π²ΡΠ·ΡΠ²Π°Π΅Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ USB-UART ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ°ΡΠΏΠΎΠ·Π½Π°ΡΡΡΡ ΠΊΠ°ΠΊ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠΉ COM-ΠΏΠΎΡΡ.
Π§ΡΠΎΠ±Ρ Π·Π°Π»ΠΈΠ²Π°ΡΡ ΠΏΡΠΎΡΠΈΠ²ΠΊΡ Π² ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ, Π½ΡΠΆΠ΅Π½ Π»ΠΈΠ±ΠΎ ΡΡΠΎΡ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°ΡΠ΅Π»Ρ, Π»ΠΈΠ±ΠΎ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°ΡΠΎΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, AVRISP MKii β Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΅Π³ΠΎ ΡΠΎΠ±ΡΠ°ΡΡ ΡΠ°ΠΌΠΈ, Π½ΠΎ ΠΈ Π² Π΅Π³ΠΎ ΡΠΎΡΡΠ°Π²Π΅ Π΅ΡΡΡ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ.
ΠΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Β«ΠΊΠ°Π»Π°ΠΌΠ±ΡΡΒ»: Π΄Π»Ρ ΡΠ±ΠΎΡΠΊΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°ΡΠΎΡΠ° Π½ΡΠΆΠ΅Π½ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°ΡΠΎΡ. Π§ΡΠΎΠ±Ρ Π²ΡΠΉΡΠΈ ΠΈΠ· ΡΡΠΎΠΉ ΡΠΈΡΡΠ°ΡΠΈΠΈ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠΉ ΡΠΈΠΏ AT90USB162. ΠΠ½, Π² ΡΠ²ΠΎΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ, ΠΏΡΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΈ ΠΊ USB ΠΏΠΎΡΡΡ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ° ΡΠ°ΡΠΏΠΎΠ·Π½Π°ΡΡΡΡ ΠΊΠ°ΠΊ ΠΏΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΠΎΠ΅ USB ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ, ΠΏΡΠΎΡΠΈΠ²ΠΊΡ Π² ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π³ΡΡΠ·ΠΈΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠΈΠ»ΠΈΡΡ Flip ΠΎΡ Atmel.
Π£ΡΠΈΠ»ΠΈΡΠ° Flip ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ΅ΡΠ΅Π· ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ:
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ flip ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π³ΡΡΠ·ΠΈΡΡ ΠΏΡΠΎΡΠΈΠ²ΠΊΡ Π΄Π»Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°ΡΠΎΡΠ° ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠΎΠ² ΠΡΠΌΠ΅Π»Π° Π±Π΅Π· ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ COM-ΠΏΠΎΡΡΠ°, Π° ΡΡ Π΅ΠΌΠ° AVRISP mk II ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½Π° Π½ΠΈΠΆΠ΅.
ΠΠ»Ρ ΡΠ°Π±ΠΎΡΡ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠΎΠ² ΠΏΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ UART (ΠΌΠ°ΡΠΊΠΈΡΠΎΠ²ΠΊΠ° ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° β rs-232) Π² Atmel AVR Π²ΡΠ΄Π΅Π»Π΅Π½ ΡΠ΅Π³ΠΈΡΡΡ UDR (UART data register), Π° Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π΅Π³ΠΎ ΡΠ°Π±ΠΎΡΡ Ρ ΡΠ°Π½ΡΡΡΡ Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΡΡ ΡΠ΅Π³ΠΈΡΡΡΠ°Ρ UCSRA, UCSRB ΠΈ UCSRΠ‘. ΠΠ°ΡΡΡΠΎΠΉΠΊΠΈ Π±ΠΈΡΠΎΠ² ΠΏΡΠΈΠ΅ΠΌΠΎΠΏΠ΅ΡΠ΅Π΄Π°ΡΡΠΈΠΊΠ° Rx, Tx, ΠΊΡΡΠ°ΡΠΈ, Ρ ΡΠ°Π½ΡΡΡΡ Π² UCSRA.
ΠΠΎΠΏΡΠΎΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠΎΠ²
ΠΠ»Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΠ Π²Π°Ρ ΠΊΠΎΠ΄ Π½ΡΠΆΠ½ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡ, Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ Π΅ΡΡΡ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ, ΠΏΡΠΈΠΌΠ΅Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ· Π½ΠΈΡ β ΡΡΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ IAR. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ° Π½Π΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΎ ΠΎΠ΄Π½ΠΈΠΌΠΈ Π»ΠΈΡΡ Atmel. 8051, AVR, AVR32, ARM β ΡΡΠΎ Π»ΠΈΡΡ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠΉ ΠΏΠ΅ΡΠ΅ΡΠ΅Π½Ρ ΠΈΠ· Π±ΠΎΠ»Π΅Π΅ ΡΠ΅ΠΌ 20 ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΡ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡ.
IAR β ΡΡΠΎ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠΎΠ² ΡΠ°Π·Π»ΠΈΡΠ½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° ΠΈ ΡΡΠΎΠ²Π½Ρ. Π₯ΠΎΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠΎΠ² Π΅ΡΡΡ Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, WinAVR ΠΈ CodeVision, Π½ΠΎ ΠΎΠ½ΠΈ Π½Π΅ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ Π΄Π»Ρ ΡΠ΅Ρ ΠΆΠ΅ ΠΠ ΠΠΎΠ² ΠΈ Π΄ΡΡΠ³ΠΈΡ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡ.
IAR Embedded Workbench β ΠΏΠΎΠ»Π½ΠΎΠ΅ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΡΡΠΎΠΉ ΠΌΠΎΡΠ½ΠΎΠΉ ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΡΡΠ΅Π΄Ρ. ΠΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΠΠ Π ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π΄ΠΎΠ±ΠΈΡΡΡΡ ΠΌΠ΅Π½ΡΡΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΠ° ΠΈ Π±ΠΎΠ»ΡΡΠ΅Π³ΠΎ Π±ΡΡΡΡΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΊΠΎΠ΄Π°; ΠΎΠ½ Π½Π°Π±ΠΈΡΠ°Π΅Ρ Π²ΡΡ Π±ΠΎΠ»ΡΡΡΡ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΎΡΡΡ ΠΈΠ·-Π·Π° ΡΠ²ΠΎΠΈΡ ΠΎΠ³ΡΠΎΠΌΠ½ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ.
Π Π°Π±ΠΎΡΠ° Ρ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ°ΠΌΠΈ ΡΡΠ΅Π±ΡΠ΅Ρ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎΠ³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ, ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ, ΠΏΡΠΎΡΠΈΠ²ΠΊΠ°, ΡΠ±ΡΠΎΡ ΠΊ Π·Π°Π²ΠΎΠ΄ΡΠΊΠΈΠΌ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ°ΠΌ; Π΄Π»Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΠΈ ΡΡΠΈΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ² Π½ΡΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Makefile β Π½Π°Π±ΠΎΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ Π΄Π»Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ°, Π² Π½ΡΠΌ Π·Π°ΠΏΠΈΡΠ°Π½Ρ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΈΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ Ρ ΡΠ°ΠΉΠ»Π°ΠΌΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ.
ΠΠ»Ρ ΠΎΡΠ»Π°Π΄ΠΊΠΈ Π³ΠΎΡΠΎΠ²ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ Π±ΡΠ» ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½ Atmel ice. ΠΠ½ Π½ΡΠΆΠ΅Π½ Π΄Π»Ρ Π²Π½ΡΡΡΠΈΡΡ Π΅ΠΌΠ½ΠΎΠΉ ΠΎΡΠ»Π°Π΄ΠΊΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΠΏΡΠΎΡΠΈΠ²ΠΊΠΈ ΡΡΡΡΠΎΠΉΡΡΠ². ΠΠΌΠ΅Π΅Ρ Π΄Π²Π° ΡΠ°Π·ΡΡΠΌΠ°:
- Π£Π½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΡΠΉ AVR, ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΠΈΠΉ Π»ΡΠ±ΠΎΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ;
- ARM.
Π‘ΡΠ΄Ρ ΠΏΠΎ ΠΎΡΠ·ΡΠ²Π°ΠΌ ΡΠ΅Π°Π»ΡΠ½ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ, ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΎΠ½ Π±ΡΡΡΡΠ΅Π΅ Π°Π½Π°Π»ΠΎΠ³ΠΎΠ² β AVR Dragon, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΈ ΡΡΠΎΠΌ Π·Π°Ρ Π²Π°ΡΡΠ²Π°Π΅Ρ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ ΠΠ ΠΠΎΠ² ΠΈ ΠΈΠΌΠ΅Π΅Ρ Π±ΠΎΠ»ΡΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΉ.
ΠΡΠ²ΠΎΠ΄Ρ
Π€ΠΈΡΠΌΠ° Atmel ΡΠ΅ΠΉΡΠ°Ρ ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈΡ MicrochipβΡ, Π½ΠΎ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ Π²ΡΠΏΡΡΠΊΠ°ΡΡ ΡΠ²ΠΎΠΈ ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²Π° ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠΎΠ². ΠΡ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΎΡΡΡ Π½Π΅ ΡΠ³Π°ΡΠ°Π»Π° Π·Π° ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π³ΠΎΠ΄Ρ, ΠΎΠ΄Π½Π°ΠΊΠΎ Π² ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ Π²ΡΠ΅ΠΌΡ Π½Π°Π±Π»ΡΠ΄Π°Π΅ΡΡΡ Π°ΠΊΡΠΈΠ²Π½Π°Ρ ΠΊΠΎΠ½ΠΊΡΡΠ΅Π½ΡΠΈΡ Ρ STM. ΠΠΎΠΊΠ° ΡΠ°Π½ΠΎ Π³ΠΎΠ²ΠΎΡΠΈΡΡ, ΠΊΡΠΎ ΠΈΠ· Π½ΠΈΡ Π²ΡΡΠ²Π΅ΡΡΡ Π²ΠΏΠ΅ΡΠ΅Π΄, ΡΠ°ΡΡΡΠΆΠ΄Π΅Π½ΠΈΡ ΠΎΠ± ΡΡΠΎΠΌ β ΡΠ΅ΠΌΠ° ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΉ ΡΡΠ°ΡΡΠΈ.
ΠΡΠ±ΠΎΡ ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²Π° Π·Π°Π²ΠΈΡΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° ΠΈ ΠΏΠΎΡΡΠ°Π²Π»Π΅Π½Π½ΡΡ ΠΏΠ΅ΡΠ΅Π΄ Π½ΠΈΠΌ Π·Π°Π΄Π°Ρ, Π° AVR ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ ΠΏΠΎΠΌΠΎΠ³Π»ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ Β«Π²ΠΎΠΉΡΠΈΒ» Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠΎΠ².
ΠΠΎΡΠ΅ΠΌΡ Π±Ρ Ρ Π½Π΅ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΠΎΠ²Π°Π» Atmel ΠΈΠ»ΠΈ ΠΎ Π½Π΅ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠΈ ΡΡΠΏΠ΅Ρ Π° Arduino / Habr
Π₯ΠΎΡΡ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ΄Π΅Π»ΠΈΡΡΡΡ Π½Π΅Π³Π°ΡΠΈΠ²Π½ΡΠΌ ΠΎΠΏΡΡΠΎΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠΎΠ² Atmel Π² ΠΏΡΠΎΠΌΡΡΠ»Π΅Π½Π½ΠΎΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅.Π ΠΏΡΠΎΠ΄ΡΠΊΡΠ΅ Π±ΡΠ»ΠΎ Π΄Π²Π° ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ° β 32-Π±ΠΈΡΠ½ΡΠΉ UC3A3 ΠΈ 8-Π±ΠΈΡΠ½ΡΠΉ ATMega164. Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π΄Π΅Π±Π°Π³Π³Π΅ΡΠ° Π²ΡΠ±ΡΠ°Π»ΠΈ AVR One!, Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΡΠ΅Π΄Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ β AVR Studio 5.0 (ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ Π²Π΅ΡΡΠΈΡ Π½Π° ΠΌΠΎΠΌΠ΅Π½Ρ ΡΡΠ°ΡΡΠ°).
Π Π½Π°ΡΠ°Π»ΠΎΡΡ!
Π£ Π΄Π²ΡΡ ΠΈΠ· ΡΡΠ΅Ρ ΠΊΡΠΏΠ»Π΅Π½Π½ΡΡ AVR One! Π² ΡΠ΅ΡΠ΅Π½ΠΈΠΈ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΠΆΠ΅ ΠΌΠ΅ΡΡΡΠ° ΠΎΡΠ²Π°Π»ΠΈΠ»ΠΈΡΡ JTAG-ΠΊΠΎΠ½Π½Π΅ΠΊΡΠΎΡΡ. Π£ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ· Π½ΠΈΡ ΠΏΡΠΎΠΏΠ°Π΄Π°Π» ΠΊΠΎΠ½ΡΠ°ΠΊΡ ΠΏΠΈΡΠ°Π½ΠΈΡ. ΠΠ°ΠΆΠ΄ΡΠΉ Π΄Π΅Π±Π°Π³Π³Π΅Ρ, ΠΊ ΡΠ»ΠΎΠ²Ρ, ΡΡΠΎΠΈΡ ΠΎΠΊΠΎΠ»ΠΎ 600 Π΅Π²ΡΠΎ!
ΠΡΠΈ ΠΏΠ΅ΡΠ²ΠΎΠΌ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΈ Π΄Π΅Π±Π°Π³Π³Π΅ΡΠ° ΠΊ ΠΊΠΎΠΌΠΏΡ Ρ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΠΎΠΉ AVR Studio 5.0 ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ Π·Π°Ρ ΠΎΡΠ΅Π»Π° ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ Π΅ΠΌΡ ΠΏΡΠΎΡΠΈΠ²ΠΊΡ. Π Π½Π΅ ΠΏΡΠΎΡΡΠΎ Π·Π°Ρ ΠΎΡΠ΅Π»Π°, Π° ΠΎΡΠΊΠ°Π·ΡΠ²Π°Π»Π°ΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π±Π΅Π· ΡΡΠΎΠ³ΠΎ. ΠΡΠΎΡΠ΅Π΄ΡΡΠ° ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΏΡΠΎΡΠΈΠ²ΠΊΠΈ Π±Π»Π°Π³ΠΎΠΏΠΎΠ»ΡΡΠ½ΠΎ Π·Π°ΡΠΈΠΊΠ»ΠΈΠ»Π°ΡΡ Π² Β«ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ β ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΠ΅ Π³ΠΎΡΠΎΠ²Π½ΠΎΡΡΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π° β ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΎ Π½Π΅ΡΡΠΏΠ΅ΡΠ½ΠΎ β ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅…Β», ΠΏΡΠΎΠΈΠ·Π²Π΅ΡΡΠΈ Π΅Π΅ ΡΠ΄Π°Π»ΠΎΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΡΠ»Π΅ Π΄ΠΎΠ»Π³ΠΈΡ ΡΠ°Π½ΡΠ΅Π² Ρ Π±ΡΠ±Π½Π°ΠΌΠΈ.
ΠΠ° Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠΉ ΡΡΠ°Π΄ΠΈΠΈ ΡΠ°Π±ΠΎΡΠ° Π²Π΅Π΄Π΅ΡΡΡ Π½Π° Evaluation ΠΏΠ»Π°ΡΠ°Ρ . ΠΡΠ»ΠΈ ΡΠ°ΠΊΠΈΠ΅ ΠΈ Ρ ΠΡΠΌΠ΅Π»Π°. ΠΠΎΡ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° Β«Π³ΠΎΡΠΎΠ²ΡΡ Β» ΡΠ²Π°Π»ΠΊΠΈΡΠ°Ρ ΠΊ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Ρ ΠΏΠΈΠ½ΠΎΠ² ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° Π±Π°Π½Π°Π»ΡΠ½ΠΎ Π½Π΅ Π±ΡΠ»ΠΎ Π΄ΠΎΡΡΡΠΏΠ°! Π ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΡΠΉ ΠΏΠ°ΠΊΠ΅Ρ STK600, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ Β«Π²ΠΎΡΠΊΠ½ΡΡΡΒ» Π² Π½Π΅Π³ΠΎ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π»ΡΠ±ΠΎΠΉ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π½ΠΈΠΊΠ° (ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΠ΅Π°Π»ΡΠ½ΠΎ ΡΡΠΏΠ΅Ρ, Π΅ΡΠ»ΠΈ Π±Ρ Π½Π΅ ΠΎΠ΄Π½ΠΎ Π½ΠΎ), ΠΈΠΌΠ΅Π» ΠΌΠ°Π»Π΅Π½ΡΠΊΠΈΠΉ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΠΊ β Π΅Π³ΠΎ ΡΡ Π΅ΠΌΠ° Π±ΡΠ»Π° Π½Π΅Π΄ΠΎΡΡΡΠΏΠ½Π° Π½ΠΈ Π² ΠΎΡΠΊΡΡΡΠΎΠΌ Π΄ΠΎΡΡΡΠΏΠ΅, Π½ΠΈ Π·Π° Π΄Π΅Π½ΡΠ³ΠΈ! ΠΠ»ΠΈΠ½, Π²ΠΎΡ ΡΠ΅Π°Π»ΡΠ½ΠΎ β ΡΡΠ»ΠΊΠΈΡ, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΡΠΉ Π΄Π»Ρ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠΎΠ² Ρ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠΎΠΉ, ΠΏΠΎΡΡΠ°Π²Π»ΡΠ»ΡΡ Π±Π΅Π· ΡΡ Π΅ΠΌΡ! Π ΡΡ Π΅ΠΌΠ° Π΅Π³ΠΎ ΠΎΡ ΡΠ°Π½ΡΠ»Π°ΡΡ ΠΎΡΠ΅Π½Ρ ΠΈ ΠΎΡΠ΅Π½Ρ ΡΡΠ°ΡΠ΅Π»ΡΠ½ΠΎ, ΡΡΠ΄Ρ ΠΏΠΎ ΠΌΠ½ΠΎΠ³ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠΌ Π²Π΅ΡΠΊΠ°ΠΌ Π½Π° AVR freaks. ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΌΡ Π½Π΅ ΠΌΠΎΠ³Π»ΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΡ ΡΠ΅Π±Π΅, ΠΊΠ°ΠΊ ΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π±Π΅Π· Π½Π°Π»ΠΈΡΠΈΡ ΡΡ Π΅ΠΌΡ, ΠΌΡ ΡΠ°Π·ΡΠΌΠ½ΠΎ ΠΎΡΠΊΠ°Π·Π°Π»ΠΈΡΡ ΠΎΡ ΠΏΠΎΠΊΡΠΏΠΊΠΈ ΡΡΠΎΠ³ΠΎ ΡΡΠ»ΠΊΠΈΡΠ° (ΠΊΠΎΡΠΎΡΡΠΉ Π½ΠΈ ΡΠ°Π·Ρ Π½Π΅ Π΄Π΅ΡΠ΅Π²ΡΠΉ, ΠΊ ΡΠ»ΠΎΠ²Ρ!).
ΠΡΠ΅ Π²Π΅ΡΠ΅Π»Π΅Π΅ ΡΡΠ°Π»ΠΎ, ΠΊΠΎΠ³Π΄Π° ΠΏΡΠΈΡΡΡΠΏΠΈΠ»ΠΈ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎ ΠΊ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΠΈ ΠΎΡΠ»Π°Π΄ΠΊΠ΅ ΠΊΠΎΠ΄Π°.
Π‘Π°ΠΌΡΠΌ Π²Π΅ΡΠ΅Π»ΡΠΌ ΠΎΠΊΠ°Π·Π°Π»ΠΎΡΡ ΡΠΎ, ΡΡΠΎ ΠΏΠΎΡΠ°Π³ΠΎΠ²Π°Ρ ΠΎΡΠ»Π°Π΄ΠΊΠ° ΠΎΠΊΠ°Π·Π°Π»Π°ΡΡ Π² ΠΏΡΠΈΠ½ΡΠΈΠΏΠ΅ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΠΉ. ΠΠ΅Π»ΠΎ Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΏΠΎΡΡΠ°Π²ΠΈΠ² Π³Π΄Π΅-Π½ΠΈΠ±ΡΠ΄Ρ Π² ΠΊΠΎΠ΄Π΅ Π±ΡΠ΅ΠΉΠΊΠΏΠΎΠΈΠ½Ρ, Π΄ΠΎΠΆΠ΄Π°Π²ΡΠΈΡΡ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π² ΡΡΠΎΠΌ ΠΌΠ΅ΡΡΠ΅ ΠΈ Π²ΡΠΏΠΎΠ»Π½ΠΈΠ² Β«ΡΠ°Π³ Π²ΠΏΠ΅ΡΠ΅Π΄Β», ΡΡ ΠΎΠΊΠ°Π·ΡΠ²Π°Π»ΡΡβ¦ Π² ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ΅ ΠΏΡΠ΅ΡΡΠ²Π°Π½ΠΈΡ! (ΠΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ, Π² ΠΏΡΠ΅ΡΡΠ²Π°Π½ΠΈΠΈ ΠΏΡΠΈ ΡΡΠΎΠΌ Π½ΠΈΠΊΠ°ΠΊΠΈΡ Π±ΡΠ΅ΠΉΠΊΠΏΠΎΠΈΠ½ΡΠΎΠ² Π½Π΅ Π±ΡΠ»ΠΎ!). Π ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΏΡΠ΅ΡΡΠ²Π°Π½ΠΈΡ Π² ΡΠΈΡΡΠ΅ΠΌΠ΅ Π±ΡΠ»ΠΈ Π²ΡΠ΅Π³Π΄Π° (ΡΠ°ΠΉΠΌΠ΅ΡΡ ΠΈ Ρ.ΠΏ.), ΠΏΡΠΎΡΠ΅ΡΡ ΠΎΡΠ»Π°Π΄ΠΊΠΈ Π²ΡΠ³Π»ΡΠ΄Π΅Π» ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ: ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΠ»ΠΎΡΡ ΡΡΠ°Π²ΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ Π±ΡΠ΅ΠΉΠΊΠΏΠΎΠΈΠ½Ρ Π½Π° ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΡΡΡΠΎΠΊΠ΅ ΠΈ Π½Π°ΠΆΠΈΠΌΠ°ΡΡ Run Π²ΠΌΠ΅ΡΡΠΎ Step Over. ΠΡΠΎΠ±Π΅Π½Π½ΠΎ Π²Π΅ΡΠ΅Π»ΠΎ ΡΡΠΎ Π±ΡΠ»ΠΎ, ΠΊΠΎΠ³Π΄Π° Π½Π°Π΄ΠΎ Π±ΡΠ»ΠΎ ΠΎΡΡΠ»Π΅Π΄ΠΈΡΡ if ΠΈΠ»ΠΈ switch. ΠΠ»ΠΈ ΠΆΠ΅ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ Step Into, Π° Π½Π΅ Step Overβ¦
ΠΡΠΎΡΡΠΌ ΡΠ°Π΄ΠΎΡΡΠ½ΡΠΌ ΠΌΠΎΠΌΠ΅Π½ΡΠΎΠΌ ΠΎΠΊΠ°Π·Π°Π»ΠΎΡΡ ΡΠΎ, ΡΡΠΎ ΠΊΠΎΠ³Π΄Π° ΡΡ ΠΎΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π»ΡΡ Π² ΠΏΡΠ΅ΡΡΠ²Π°Π½ΠΈΠΈ, ΡΡ Π½Π΅ Π²ΠΈΠ΄Π΅Π» ΡΡΠ΅ΠΊΠ° Π²ΡΠ·ΠΎΠ²ΠΎΠ². ΠΡΠΎΠ±Π΅Π½Π½ΠΎ ΡΠ°Π΄ΠΎΠ²Π°Π»ΠΎ, ΠΊΠΎΠ³Π΄Π° ΡΡΠΈΠΌ ΠΏΡΠ΅ΡΡΠ²Π°Π½ΠΈΠ΅ΠΌ Π±ΡΠ»ΠΎ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ°. ΠΠ° ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅ Π½Π° ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ΅ ΠΎΡ Freescale Π² Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎΠΉ ΡΠΈΡΡΠ°ΡΠΈΠΈ ΡΡ ΠΎΡΠ»ΠΈΡΠ½ΠΎ Π²ΠΈΠ΄Π΅Π» Π²Π΅ΡΡ ΡΡΠ΅ΠΊ Π²ΡΠ·ΠΎΠ²ΠΎΠ² β Π² ΠΊΠ°ΠΊΠΎΠΌ ΠΌΠ΅ΡΡΠ΅ ΠΏΡΠΎΠΈΠ·ΠΎΡΠ»ΠΎ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° ΠΈ ΡΡΠΎ ΠΊ Π½Π΅ΠΌΡ ΠΏΡΠΈΠ²Π΅Π»ΠΎ. ΠΠ΄Π΅ΡΡ ΠΆΠ΅ Π²ΡΠ΅, ΡΡΠΎ ΡΡ Π²ΠΈΠ΄Π΅Π» β ΡΡΠΎ ΡΠΎ, ΡΡΠΎ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΠΈΠ·ΠΎΡΠ»ΠΎ. Π Π³Π΄Π΅ ΠΈ ΠΏΠΎΡΠ΅ΠΌΡ β ΠΎΡΡΠ°Π²Π°Π»ΠΎΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄ΠΎΠ³Π°Π΄ΡΠ²Π°ΡΡΡΡ.
Π’ΡΠ΅ΡΡΠΈΠΌ ΡΠ°Π΄ΠΎΡΡΠ½ΡΠΌ ΠΌΠΎΠΌΠ΅Π½ΡΠΎΠΌ ΠΎΠΊΠ°Π·Π°Π»ΠΎΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π²ΠΎΡ ΡΡΠΎ: ΠΊΠΎΠ΄
int a[4];
a[0] = 1;
a[1] = 2;
a[2] = 3;
a[3] = 4;
ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΡΠ΅ΡΠΊΠΈ ΠΎΡΠΊΠ°Π·ΡΠ²Π°Π»ΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π° ATMega! ΠΠ»Π΅ΠΌΠ΅Π½Ρ a[1] ΠΏΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΠΎΡΡΠ°Π²Π°Π»ΡΡ ΡΠ°Π²Π½ΡΠΌ 0!
Π ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ ΠΏΠΎΡΠ°Π΄ΠΎΠ²Π°Π» ΠΎΡΠ²Π΅Ρ ΡΠ΅Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ Atmel Β«ΠΠ°, Π΄Π°Π½Π½ΡΠΉ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ ΠΈΠΌΠ΅Π΅Ρ ΡΠΊΠ°Π·Π°Π½Π½ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, ΠΏΠΎΠΏΡΠΎΠ±ΡΠΉΡΠ΅ Π·Π°ΠΌΠ΅Π½ΠΈΡΡ Π΅Π³ΠΎ Π½Π° Π΄ΡΡΠ³ΠΎΠΉ!Β». ΠΠ³Π°, Π° Π½ΠΈΡΠ΅Π³ΠΎ, ΡΡΠΎ ΡΠΆΠ΅ ΠΊΠ°ΠΊ Π±Ρ ΠΏΠ»Π°ΡΠ° Ρ Π½ΠΈΠΌ ΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½Π°? Π‘Π»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΡΠ²Π΅ΡΠΎΠΌ ΡΠ΅Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ Π±ΡΠ»ΠΎ Β«ΠΠΎΠΏΡΠΎΠ±ΡΠΉΡΠ΅ Π·Π°ΠΌΠ΅Π½ΠΈΡΡ Π² AVR Studio ΡΠΎΠ΄Π½ΠΎΠΉ AVR toolchain Π½Π° open source WinAVR. ΠΡΠΎ, ΠΊΠ°ΠΊ Π½ΠΈ ΡΡΡΠ°Π½Π½ΠΎ, ΠΏΠΎΠΌΠΎΠ³Π»ΠΎ, ΠΌΠ°ΡΡΠΈΠ² ΡΡΠ°Π» ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡΡΡ ΠΊΠ°ΠΊ Π½Π°Π΄ΠΎ. ΠΡΠ°Π²Π΄Π°, Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡΠ½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ ΡΡΠΎΠ³ΠΎ toolchain ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ»ΠΈ ΠΈΠ· ΡΠ΅Π±Ρ ΠΌΠ΅ΡΡΠ°ΠΌΠΈ ΠΊΠ°ΡΡ, ΠΈ ΡΠ°ΡΡΡ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ² ΠΏΡΠΈΡΠ»ΠΎΡΡ Π±ΡΠ°ΡΡ ΠΎΡ βΡΠΎΠ΄Π½ΠΎΠ³ΠΎββ¦
ΠΠ»ΡΡ Π²ΡΡ ΡΠΈΡΡΠ΅ΠΌΠ° ΡΠ°Π±ΠΎΡΠ°Π»Π° ΠΊΡΠ°ΠΉΠ½Π΅ Π½Π΅ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎ. ΠΠ΅Π±Π°Π³Π³Π΅Ρ ΠΌΠΎΠ³ ΠΏΡΠΎΡΡΠΎ ΠΏΠ΅ΡΠ΅ΡΡΠ°ΡΡ Π²ΠΈΠ΄Π΅ΡΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ. Π‘ΡΡΠ΄ΠΈΡ ΠΌΠΎΠ³Π»Π° ΠΏΠ΅ΡΠ΅ΡΡΠ°ΡΡ Π²ΠΈΠ΄Π΅ΡΡ Π΄Π΅Π±Π°Π³Π³Π΅Ρ. ΠΠ»ΠΈ ΠΏΠ΅ΡΠ΅ΡΡΠ°ΡΡ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΠΊΠΎΠ΄ Π½Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅.
Π ΡΡΠ°ΡΡΡΡ, Π½Π° AVR freaks ΡΠ°ΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ Π±ΡΠ»Π° ΠΎΠΏΠΈΡΠ°Π½Π° ΠΈ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π½Π°ΠΉΠ΄Π΅Π½Ρ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π²ΠΌΠ΅ΡΡΠΎ 600-Π΅Π²ΡΠΎΠ²ΡΡ AVR One! Π±ΡΠ»ΠΈ ΠΊΡΠΏΠ»Π΅Π½Ρ 50-Π΅Π²ΡΠΎΠ²ΡΠ΅ AVR Dragon, ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠ΅ Π³ΠΎΡΠ°Π·Π΄ΠΎ ΡΡΠ°Π±ΠΈΠ»ΡΠ½Π΅Π΅ β Ρ Π½ΠΈΠΌΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΡΡΠ°Π»Π° Π² ΠΏΡΠΈΠ½ΡΠΈΠΏΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΠΉ. (ΠΠ· ΡΠ΅ΡΠΈΠΈ βΠΠ°ΡΠ΅ΠΌ, Π±Π»ΠΈΠ½, ΠΏΠ»Π°ΡΠΈΡΡ Π±ΠΎΠ»ΡΡΠ΅?β).
Π ΠΏΡΠΈΡΠ»ΠΎΡΡ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ Ρ AVR Studio 5.0 Π½Π° Π±ΠΎΠ»Π΅Π΅ ΡΡΠ°ΡΡΡ AVRStudio32, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΏΠ΅ΡΠ²Π°Ρ Π±ΡΠ»Π° Π½Π°ΡΡΠΎΠ»ΡΠΊΠΎ Π³Π»ΡΡΠ½ΠΎ-ΡΡΡΠΎΠΉ, ΡΡΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π² Π½Π΅ΠΉ Π±ΡΠ»ΠΎ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ. ΠΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ, Ρ ΠΏΡΡΠΎΠΉ ΡΡΡΠ΄ΠΈΠΈ Π±ΡΠ» ΡΠ΄ΠΎΠ±Π½ΡΠΌ, Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ ΡΠΊΠ°ΠΆΠ΅ΡΡ, Π½ΠΎ ΠΊΠΎΠ³Π΄Π° ΡΠ΄ΠΎΠ±Π½Π°Ρ Π² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΡΡΠ΅Π΄Π° Π±Π°Π½Π°Π»ΡΠ½ΠΎ Π½Π΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ β ΡΠ΄ΠΎΠ±ΡΡΠ²ΠΎ ΠΎΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ Π±Π΅ΡΡΠΌΡΡΠ»Π΅Π½Π½ΡΠΌ, ΡΠ²Ρ.
AVRStudio32 c ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° ΠΎΠΊΠ°Π·Π°Π»Π°ΡΡ ΠΎΡΠ΅Π½Ρ ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΡΡΠΊΠΎΠΉ. Π’ΠΎ Π»ΠΈ Eclipse-based ΡΡΠ³ΡΠ°Π»ΠΎ ΡΠ²ΠΎΡ ΡΠΎΠ»Ρ, ΡΠΎ Π»ΠΈ Atmel Π²Π½Π΅Ρ ΡΠ²ΠΎΡ Π»Π΅ΠΏΡΡβ¦ ΠΡΠΈΠ²Π΅Π΄Ρ Π»ΠΈΡΡ ΠΎΠ΄ΠΈΠ½ ΠΏΡΠΈΠΌΠ΅Ρ.
ΠΠ°ΠΌ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΠ»ΠΎΡΡ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΠΎΡΠΊΡ Π·Π°ΠΏΡΡΠΊΠ°, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π²ΡΡΡΠ°Π²Π»Π΅Π½Π° Π² ΡΡΠ΅Π΄Π΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π½Π° Π½Π°ΡΠ°Π»ΠΎ flash ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ°. Π AVRStudio32 Π·Π° ΡΡΠΎ ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ ΡΠ°ΠΊ Π½Π°Π·ΡΠ²Π°Π΅ΠΌΠ°Ρ βΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ Π·Π°ΠΏΡΡΠΊΠ°β (Π½Π°ΠΉΡΠΈ ΠΊΠΎΡΠΎΡΡΡ, ΠΊΡΡΠ°ΡΠΈ, ΠΎΡΠ½ΡΠ΄Ρ Π½Π΅ ΠΎΡΠ΅Π²ΠΈΠ΄Π½Π°Ρ Π·Π°Π΄Π°ΡΠ°). Π’Π°ΠΊ ΠΌΠ°Π»ΠΎ ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ Π·Π°ΠΏΡΡΠΊΠ° Π½Π΅ ΡΠΎΡ ΡΠ°Π½ΡΡΡΡΡ Π² ΠΏΡΠΎΠ΅ΠΊΡΠ΅ (Π° ΡΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΠ» Π²Π½ΠΎΡΠΈΡΡ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ βΡΡΡΠΊΠ°ΠΌΠΈβ ΠΈ ΠΈΡ Π½Π΅Π»ΡΠ·Ρ Π±ΡΠ»ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠΈΡΡ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ), ΡΠ°ΠΊ ΠΊΡΠΎΠΌΠ΅ ΡΡΠΎΠ³ΠΎ ΡΡΡΠ΄ΠΈΡ ΠΌΠΎΠ³Π»Π° Π² ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΠΈΠ· ΠΌΠΎΠΌΠ΅Π½ΡΠΎΠ² ΠΏΠΎ ΡΠ²ΠΎΠ΅ΠΌΡ ΠΆΠ΅Π»Π°Π½ΠΈΡ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ, Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌΠΈ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, ΡΠ΄Π΅Π»Π°Π² Π΅Π΅ ΡΠ΅ΠΊΡΡΠ΅ΠΉ. ΠΠ΅Ρ, ΠΊΠΎΠ³Π΄Π° ΡΡΠΎ Π²ΡΠ΅ ΡΠΆΠ΅ Π·Π½Π°Π΅ΡΡ, ΡΠΎ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ ΡΡΠΎ Π½Π΅ Π²ΠΎΠΏΡΠΎΡ. ΠΠΎ Π²ΠΎΡ ΠΊΠΎΠ³Π΄Π° Π½Π΅ Π·Π½Π°Π΅ΡΡ, Π° Π²ΡΠ³Π»ΡΠ΄ΠΈΡ Π²ΡΠ΅ ΡΠ°ΠΊ, ΡΡΠΎ ΠΏΠΎΡΠ»Π΅ ΠΎΡΠ΅ΡΠ΅Π΄Π½ΠΎΠ³ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π²Π΄ΡΡΠ³ Π²ΡΠ΅ ΠΏΠ΅ΡΠ΅ΡΡΠ°Π»ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ, ΡΠΎ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ ΠΎΡΠ΅Π½Ρ Π΄Π°ΠΆΠ΅ Π½Π΅Π²Π΅ΡΠ΅Π»ΠΎβ¦
Π’ΠΎ, ΡΡΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ Π·Π° Π³ΠΎΠ΄ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π΄Π΅Π±Π°Π³Π³Π΅ΡΡ Π±Π°Π½Π°Π»ΡΠ½ΠΎ ΡΡΠΈ ΠΈΠ»ΠΈ ΡΠ΅ΡΡΡΠ° ΡΠ°Π·Π° Π²ΡΡ ΠΎΠ΄ΠΈΠ»ΠΈ ΠΈΠ· ΡΡΡΠΎΡ, ΡΠΆΠ΅ Π±ΡΠ»ΠΎ ΠΏΡΠΎΡΡΠΎ Π΄ΠΎΡΠ°Π΄Π½ΠΎΠΉ ΠΌΠ΅Π»ΠΎΡΡΡ.
ΠΡΠ΅ ΠΎΠ΄Π½ΠΎΠΉ ΡΠ°ΠΊΠΎΠΉ Π΄ΠΎΡΠ°Π΄Π½ΠΎΠΉ ΠΌΠ΅Π»ΠΎΡΡΡ Π±ΡΠ» ΠΏΡΠΈΠΊΠΎΠ» Ρ ΡΠ΅ΠΌ, ΡΡΠΎ Atmel Π½Π°Π·ΡΠ²Π°Π΅Ρ Fuses β ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ Π±ΠΈΡΡ, ΡΠΏΡΠ°Π²Π»ΡΡΡΠΈΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ°, Π΄ΠΎΡΡΡΠΏΠ½ΡΠ΅ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄. ΠΠ΅ΠΎΡΡΠΎΡΠΎΠΆΠ½ΠΎΠ΅ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΠΎΡΠΈΠ±ΠΊΠ° β ΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ ΠΎΠΊΠ°Π·ΡΠ²Π°Π»ΡΡ Π½Π΅ΠΏΡΠΈΠ³ΠΎΠ΄Π½ΡΠΌ ΠΊ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π±Π΅Π· ΠΎΡΠ΅Π½Ρ ΡΠ»ΠΎΠΆΠ½ΡΡ ΡΠ΅Π»ΠΎΠ΄Π²ΠΈΠΆΠ΅Π½ΠΈΠΉ. ΠΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΡ Π΅Π³ΠΎ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π²Π½ΡΡΡΠ΅Π½Π½Π΅ΠΉ ΡΠ°ΠΊΡΠΎΠ²ΠΎΠΉ ΡΠ°ΡΡΠΎΡΡ Π½Π° Π²Π½Π΅ΡΠ½ΡΡ. ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π²Π½Π΅ΡΠ½Π΅ΠΉ, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ ΠΆΠ΅, Π² Π½Π°Π»ΠΈΡΠΈΠΈ Π½Π΅ Π±ΡΠ»ΠΎ, ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ ΠΏΠ΅ΡΠ΅ΡΡΠ°Π²Π°Π» ΡΠ°Π±ΠΎΡΠ°ΡΡ. ΠΠ΅ΡΠ½ΡΡΡ ΡΡΠΎΡ Π±ΠΈΡ Π±Π΅Π· ΠΏΠΎΠ΄Π°ΡΠΈ Π²Π½Π΅ΡΠ½Π΅ΠΉ ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΠΈ Π±ΡΠ»ΠΎ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π² ΠΏΡΠΈΠ½ΡΠΈΠΏΠ΅. Π Π΅ΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, βΠ²ΡΠΊΠ»ΡΡΠΈΡΡβ JTAG β ΠΏΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ ΠΊ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡΡΡ Π΄Π΅Π±Π°Π³Π³Π΅ΡΠΎΠΌ.
ΠΠΏΠΎΠ»Π½Π΅ Π΅ΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ, ΡΡΠΎ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡΡ ΠΎΡΠΈΠ±ΠΊΠΈ. ΠΠΎ ΠΊΠΎΠ³Π΄Π° ΡΠ°ΠΊΠ°Ρ ΠΎΡΠΈΠ±ΠΊΠ° ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΠ° Π½Π° Π½Π΅ΠΏΠΎΠ½ΡΡΠ½ΠΎ ΡΠΊΠΎΠ»ΡΠΊΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ β ΠΌΡΠ³ΠΊΠΎ Π³ΠΎΠ²ΠΎΡΡ, ΡΠΎΠ²ΡΠ΅ΠΌ Π½Π΅Π²Π΅ΡΠ΅Π»ΠΎ.
ΠΠ΄Π½Π° ΠΈΠ· ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ ΠΎΠΊΠ°Π·Π°Π»Π°ΡΡ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ Π²Π΅ΡΠ΅Π»ΠΎΠΉ β ΠΏΠΎ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΠΈΠ· ΠΏΡΠΈΡΠΈΠ½ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ ΠΎΠ΄ΠΈΠ½ Π·Π° ΠΎΠ΄Π½ΠΈΠΌ ΠΏΠ΅ΡΠ΅ΡΡΠ°Π²Π°Π»ΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ, ΠΈ Π΄Π΅Π±Π°Π³Π³Π΅ΡΡ ΡΠΎΠΆΠ΅ ΠΏΠ΅ΡΠ΅ΡΡΠ°Π²Π°Π»ΠΈ ΠΈΡ Π²ΠΈΠ΄Π΅ΡΡ. ΠΡΠ΅ΠΌΠ΅Π½ΠΈ Π½Π° Π°Π½Π°Π»ΠΈΠ· Π±ΡΠ»ΠΎ ΠΏΠΎΡΡΠ°ΡΠ΅Π½ΠΎ ΠΏΡΠΈΠ»ΠΈΡΠ½ΠΎ, ΠΎΠΊΠ°Π·Π°Π»ΠΎΡΡ ΠΆΠ΅ Π²ΠΎΡ ΡΡΠΎ.
ΠΠ΅ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΠΎΠΏ. ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ: ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ ΠΎΡ Atmel ΠΈΠΌΠ΅Π΅Ρ ΡΠ°ΠΊ Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΠΉ Device Code, ΠΎΠ΄Π½ΠΎΠ·Π½Π°ΡΠ½ΠΎ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΡΡΡΠΈΠΉ ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²ΠΎ. ΠΡΡΡ ΡΠΏΠ΅Ρ. ΠΊΠΎΠΌΠ°Π½Π΄Π°, ΡΡΠΎΠ±Ρ ΡΡΠΎΡ ΠΊΠΎΠ΄ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ. ΠΠ΅Π±Π°Π³Π³Π΅Ρ ΠΈ ΡΡΡΠ΄ΠΈΡ ΠΊΠ°ΠΊ ΡΠ°Π· Π΅Π³ΠΎ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ Π΄Π»Ρ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΎ. ΠΠΎ ΠΈΠ΄Π΅Π΅, Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΡΠΎ read only, ΠΈ Π½ΠΈΠ³Π΄Π΅ Π² ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ Π½Π΅ ΡΠΊΠ°Π·Π°Π½ΠΎ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠ΅. ΠΠΊΠ°Π·Π°Π»ΠΎΡΡ, ΡΡΠΎ ΡΡΠΎ Π½Π΅ ΡΠ°ΠΊ.
Π¦ΠΈΡΠ°ΡΠ° ΠΈΠ· Errata:
Signature may be Erased in Serial Programming Mode
If the signature bytes are read before a chiperase command is completed, the signature may be erased causing the device ID and calibration bytes to disappear. This is critical, especially, if the part is running on internal RC oscillator.
ΠΡΠΎΠ±Π΅Π½Π½ΠΎ ΠΆΠ΅ Π²ΠΏΠ΅ΡΠ°ΡΠ»ΠΈΠ»ΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ:
Problem Fix / Workaround:
Ensure that the chiperase command has exceeded before applying the next command.
Π’ΠΎ Π΅ΡΡΡ, Π΅ΡΠ»ΠΈ Device ID ΡΠΆΠ΅ ΠΎΠΊΠ°Π·Π°Π»ΡΡ ΡΡΠ΅ΡΡΡΠΌ, Π·Π°ΠΏΠΈΡΠ°ΡΡ Π΅Π³ΠΎ Π½Π°Π·Π°Π΄ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π½Π΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ. Π₯ΡΠΆΠ΅ Π²ΡΠ΅Π³ΠΎ ΡΠΎ, ΡΡΠΎ Π²ΠΌΠ΅ΡΡΠ΅ Ρ Π½ΠΈΠΌ ΡΡΠΈΡΠ°Π΅ΡΡΡ Π΅ΡΠ΅ ΠΈ ΠΊΠ°Π»ΠΈΠ±ΡΠΎΠ²ΠΊΠ° Π²Π½ΡΡΡΠ΅Π½Π½Π΅ΠΉ ΡΠ°ΡΡΠΎΡΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠ°ΠΊΠΆΠ΅ Π½Π΅Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²ΠΈΠΌΠ°, Π½Π°ΡΠΊΠΎΠ»ΡΠΊΠΎ Ρ ΠΏΠΎΠ½ΡΠ» ΠΈΠ· Π΄ΠΎΡΡΡΠΏΠ½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ.
ΠΠΎΠ»ΠΆΠ΅Π½ ΡΠΊΠ°Π·Π°ΡΡ, ΡΡΠΎ ΠΏΠΎΡΠ»Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Chip Erase Π² ΠΊΠΎΠ΄Π΅ ΡΡΠΎΡΠ»Π° Π·Π°Π΄Π΅ΡΠΆΠΊΠ° Π² Π΄Π²Π° ΡΠ°Π·Π° Π±ΠΎΠ»ΡΡΠ΅, ΡΠ΅ΠΌ ΡΠΎΠ³ΠΎ ΡΡΠ΅Π±ΠΎΠ²Π°Π»Π° ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ. ΠΠ΄Π½Π°ΠΊΠΎ Device ID Π²ΠΎΠ»ΡΠ΅Π±Π½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΡΡΠΈΡΠ°Π»ΡΡ ΠΏΠΎ Π½Π΅ΠΏΠΎΠ½ΡΡΠ½ΠΎΠΉ ΠΏΡΠΈΡΠΈΠ½Π΅β¦
Π§ΡΠΎ ΠΆΠ΅, Π½Π΅Π³Π°ΡΠΈΠ²Π½ΡΠΉ ΠΎΠΏΡΡ β ΡΠΎΠΆΠ΅ ΠΎΠΏΡΡ. ΠΡΡΠ΄ Π»ΠΈ Ρ ΠΏΠΎ Π΄ΠΎΠ±ΡΠΎΠΉ Π²ΠΎΠ»Π΅ Π²ΡΠ±Π΅ΡΡ ΡΠ΅ΠΏΠ΅ΡΡ Atmel Π΄Π»Ρ ΡΠ΅Π³ΠΎ-Π»ΠΈΠ±ΠΎ.
Π ΡΡΠΎ ΠΊΠ°ΡΠ°Π΅ΡΡΡ Arduino β ΠΏΠΎΠ½ΡΡΠ½ΠΎ, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ, ΡΡΠΎ ΡΠ΅, ΠΊΡΠΎ ΡΠ΅ΡΠ°Π΅Ρ Ρ Π½Π΅ΠΉ ΠΏΠΎΠΈΠ³ΡΠ°ΡΡΡΡ, Ρ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎΠΌ ΠΏΡΠΎΠ±Π»Π΅ΠΌ Π±Π°Π½Π°Π»ΡΠ½ΠΎ Π½Π΅ ΡΡΠΎΠ»ΠΊΠ½ΡΡΡΡ, Π½ΠΎ β ΠΏΠΎΡΠ»Π΅ Π²ΡΠ΅Π³ΠΎ ΠΎΠΏΠΈΡΠ°Π½Π½ΠΎΠ³ΠΎ Π²ΡΡΠ΅ Ρ Π²ΡΠ΅ ΠΆΠ΅ Π½Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ ΡΡΠΎΠ»Ρ Π²ΡΡΠΎΠΊΠΎΠΉ Π΅Π΅ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΎΡΡΠΈ.
Π ΠΊΡΡΠ°ΡΠΈ, Π²ΡΠ±ΠΎΡ Π·Π°ΠΊΠ°Π·ΡΠΈΠΊΠΎΠΌ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ, ΠΏΠΎΡ ΠΎΠΆΠ΅, ΠΊΠ°ΠΊ ΡΠ°Π· ΠΈ Π±ΡΠ» ΠΎΠ±ΡΡΠ»ΠΎΠ²Π»Π΅Π½ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΎΡΡΡΡ ΠΡΠ΄ΡΠΈΠ½ΠΎβ¦
UPD: ΠΠΎΡ, ΠΊΡΡΠ°ΡΠΈ, ΠΈΠ· ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ Π³Π»ΡΠΊΠΎΠ²: Π½Π° ATMega164 Π΅ΡΡΡ ΡΡΠΈ Π³ΡΡΠΏΠΏΡ ΡΡΡΠ·ΠΎΠ²: fuse, fuse_high, fuse_ext. Π’Π°ΠΊ Π²ΠΎΡ, ΠΏΠΎ Π½Π΅ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎΠΉ ΠΏΡΠΈΡΠΈΠ½Π΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ fuse_high Π½Π΅ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ. ΠΡΠΈ ΡΡΠΎΠΌ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ fuse β ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ, ΠΈ ΡΡΠΎ ΡΠ°ΠΌΠΎΠ΅ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎΠ΅ β ΠΏΠΎΡΠ»Π΅ Π»ΡΠ±ΠΎΠ³ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ fuse (Π΄Π°ΠΆΠ΅ Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ Π·Π½Π°ΡΠ°ΡΠ΅Π³ΠΎ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅-Π²ΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ²ΠΎΠ΄Π° ΡΠ°ΠΊΡΠΎΠ²ΠΎΠΉ ΡΠ°ΡΡΠΎΡΡ Π½Π°ΡΡΠΆΡ Π½Π° ΠΏΠΈΠ½, ΠΊΠΎΡΠΎΡΡΠΉ Π²ΠΈΡΠΈΡ Π² Π²ΠΎΠ·Π΄ΡΡ Π΅) Π½Π°ΡΠΈΠ½Π°Π΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ fuse_ext.
ΠΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ Atmel — ΠΠΎΠ»ΡΡΠΈΠΊ.ΡΡ
Β ΠΠΎΠΌΠΏΠ°Π½ΠΈΡ Atmel β Π»ΠΈΠ΄Π΅Ρ Π² ΠΎΠ±Π»Π°ΡΡΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²Π° ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠΎΠ². ΠΡ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ Π²ΡΡΡΠ°ΠΈΠ²Π°Π΅ΠΌΡΡ ΡΠ΅ΡΠ΅Π½ΠΈΡΡ , 8-Π±ΠΈΡΠ½ΡΠ΅ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ ΡΠ΅ΡΠΈΠΈ megaAVR Ρ AVR Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠΎΠΉ ΠΏΠΎΠ»ΠΎΠΆΠΈΠ»ΠΈ Π½Π°ΡΠ°Π»ΠΎ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅ Arduino, ΡΠ΄Π΅Π»Π°Π²ΡΠ΅ΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠΎΠ² ΠΏΡΠΎΡΡΡΠΌ ΠΊΠ°ΠΊ Π½ΠΈΠΊΠΎΠ³Π΄Π° ΡΠ°Π½Π΅Π΅. ΠΡΠΎΠΌΠ΅ AVR, ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ Π½Π° Π±Π°Π·Π΅ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡ ARM ΠΈ MCS-51.
Β ΠΠΎ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ AVR Π²ΡΡ-ΡΠ°ΠΊΠΈ ΡΠ²Π»ΡΡΡΡΡ ΡΠ°ΠΌΡΠΌ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠΌ Π΄Π΅ΡΠΈΡΠ΅ΠΌ Atmel Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ Ρ ΠΎΡΠΎΡΠ΅ΠΌΡ ΡΠΎΡΠ΅ΡΠ°Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ, ΡΠ½Π΅ΡΠ³ΠΎΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ ΠΈ ΡΠ΅Π½Ρ. ΠΠ½ΠΈ Ρ ΠΎΡΠΎΡΠΎ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Ρ Π΄Π»Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½Π° ΡΠ·ΡΠΊΠ΅ C Π»ΠΈΠ±ΠΎ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠΌ ΡΠ·ΡΠΊΠ΅ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ°. ΠΠ΅ΡΠ²ΡΠ΅ 8-Π±ΠΈΡΠ½ΡΠ΅ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ ΡΡΠΎΠΉ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ Π±ΡΠ»ΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Ρ Π² 1996 Π³ΠΎΠ΄Ρ, 32-Π±ΠΈΡΠ½ΡΠ΅ AVR32 ΠΏΠΎΡΠ²ΠΈΠ»ΠΈΡΡ ΡΠ΅ΡΠ΅Π· 10 Π»Π΅Ρ β Π² 2006 Π³ΠΎΠ΄Ρ.
AVR ΠΈΠΌΠ΅Π΅Ρ Π³Π°ΡΠ²Π°ΡΠ΄ΡΠΊΡΡ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ (Π΄Π°Π½Π½ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ Ρ ΡΠ°Π½ΡΡΡΡ Π² ΡΠ°Π·Π½ΡΡ Π°Π΄ΡΠ΅ΡΠ½ΡΡ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π°Ρ ) ΠΈ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ RISC (ΡΠΎΠΊΡΠ°ΡΠ΅Π½Π½ΡΠΉ Π½Π°Π±ΠΎΡ ΠΊΠΎΠΌΠ°Π½Π΄, ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°ΡΡΠΈΠΉ Π±ΡΡΡΡΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅). ΠΡΡΠΈΡΠ»ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΡΠ΄ΡΠΎ, ΠΏΠ°ΠΌΡΡΡ ΠΈ ΠΎΡΡΠ°Π»ΡΠ½Π°Ρ ΠΏΠ΅ΡΠΈΡΠ΅ΡΠΈΡ Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ Π½Π° ΠΎΠ΄Π½ΠΎΠΌ ΠΊΡΠΈΡΡΠ°Π»Π»Π΅, Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΠ΅ΠΌΡ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ AVR ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ ΡΠΎΠ±ΠΎΠΉ SoC (System on chip, ΡΠΈΡΡΠ΅ΠΌΠ° Π½Π° ΠΊΡΠΈΡΡΠ°Π»Π»Π΅).
ΠΡΠΎΠΌΠ΅ ΡΠ»Π΅Ρ-ΠΏΠ°ΠΌΡΡΠΈ ΠΈ ΠΠΠ£ Π² AVR ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ°Ρ ΠΈΠΌΠ΅Π΅ΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ΅ΠΌΠ°Ρ EEPROM ΠΏΠ°ΠΌΡΡΡ. ΠΠ±ΡΡΠΌ ΠΏΠ°ΠΌΡΡΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ β Π΄ΠΎ 512 ΠΠ, Π Π°Π±ΠΎΡΠ°Ρ ΡΠ°ΡΡΠΎΡΠ° 8-Π±ΠΈΡΠ½ΡΡ AVR ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠΎΠ² β Π΄ΠΎ 32 ΠΠΡ, 32-Π±ΠΈΡΠ½ΡΡ β Π΄ΠΎ 66 ΠΠΡ. ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ· Π½ΠΈΡ ΠΈΠΌΠ΅ΡΡ Π½Π°ΡΠΈΠ²Π½ΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° USB. ΠΠ° ΡΠ΅Π³ΠΎΠ΄Π½ΡΡΠ½ΠΈΠΉ Π΄Π΅Π½Ρ 8-Π±ΠΈΡΠ½ΡΠ΅ AVR ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ ΠΌΠΎΡΠ°Π»ΡΠ½ΠΎ ΡΡΡΠ°ΡΠ΅Π»ΠΈ, Π° ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²ΠΎ AVR32 Π½Π΅ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΎ ΡΠΈΡΠΎΠΊΠΎΠ³ΠΎ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½ΠΈΡ.
Π ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ Π²ΡΠ΅ΠΌΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ Atmel ΠΏΠ΅ΡΠ΅ΡΠ»Π° Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΡ ARM ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ Π²ΠΌΠ΅ΡΡΠΎ Π΄ΠΎΡΠ°Π±Π°ΡΡΠ²Π°Π½ΠΈΡ AVR. ARM ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ Atmel ΡΠ²Π»ΡΡΡΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΠ΅Π»ΡΠΌΠΈ ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ² Cortex-M0+, Cortex-M3, Cortex-M4, Cortex-M7. Π’Π°ΠΊΠΎΠ΅ ΠΌΠ½ΠΎΠ³ΠΎΠΎΠ±ΡΠ°Π·ΠΈΠ΅ ΠΠ Π½Π° Π±Π°Π·Π΅ ARM ΡΠ΄ΠΎΠ²Π»Π΅ΡΠ²ΠΎΡΠΈΡ ΠΏΠΎΡΡΠΈ Π»ΡΠ±ΡΠ΅ Π·Π°ΠΏΡΠΎΡΡ. ΠΠ½ΠΈ ΠΈΠΌΠ΅ΡΡ Π±ΠΎΠ»ΡΡΠΈΠ΅ ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ AVR ΠΎΠ±ΡΡΠΌΡ ΠΏΠ°ΠΌΡΡΠΈ ΠΈ ΡΠ°ΠΊΡΠΎΠ²ΡΠ΅ ΡΠ°ΡΡΠΎΡΡ: Π΄ΠΎ 2 ΠΠ ΠΏΠ°ΠΌΡΡΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ ΠΈ Π΄ΠΎ 160 ΠΠ SRAM. ΠΡΠΈ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ ΠΈΠΌΠ΅ΡΡ ΡΠ°ΠΊΡΠΎΠ²ΡΡ ΡΠ°ΡΡΠΎΡΡ Π΄ΠΎ 120 ΠΠΡ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΠΎΠ½ΠΈ ΠΈΠΌΠ΅ΡΡ Π½Π°ΡΠΈΠ²Π½ΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ ΡΠ΅Π½ΡΠΎΡΠ½ΠΎΠ³ΠΎ Π²Π²ΠΎΠ΄Π° Atmel QTouch ΠΈ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° USB. Π£ ΠΠ Atmel Π½Π° Π±Π°Π·Π΅ ARM Cortex-M4 ΡΠ½Π΅ΡΠ³ΠΎΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΠ΅ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΠ΅ ΡΡΠ΅Π΄ΠΈ ΠΊΠΎΠ½ΠΊΡΡΠ΅Π½ΡΠΎΠ², ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π²ΡΡΠΎΠΊΠΎΠ°Π²ΡΠΎΠ½ΠΎΠΌΠ½ΡΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²Π°.
Β ΠΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ ΠΎΠ±ΠΎΠΈΡ ΡΠΏΠΎΠΌΡΠ½ΡΡΡΡ Π²ΡΡΠ΅ ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ² ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ Π΄Π°Π½Π½ΡΡ Β SPI, I2C ΠΈ UART.
Β Π’Π°ΠΊΠΆΠ΅ Atmel Π²ΡΠΏΡΡΠΊΠ°Π΅Ρ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²Π° MCS-51 Π½Π° Π·Π°ΠΌΠ΅Π½Ρ ΡΠ½ΡΡΡΠΌ Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²Π° Intel 8051. ΠΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡΡ Π±ΠΎΠ»Π΅Π΅ 50 Π²ΠΈΠ΄ΠΎΠ². ΠΠ±ΡΡΠΌ ΡΠ»Π΅Ρ-ΠΏΠ°ΠΌΡΡΠΈ β Π΄ΠΎ 64 ΠΠ. ΠΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ ΡΡΠΎΠ³ΠΎ ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²Π° (ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²Π° Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ Atmel) Π±ΠΎΠ»Π΅Π΅ 30 Π»Π΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π² ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ β ΠΎΡ ΡΠ²Π΅ΡΠΎΡΠΎΡΠΎΠ² ΠΈ ΡΠΎΡΠ³ΠΎΠ²ΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΎΠ² Π΄ΠΎ Π±ΠΎΡΡΠΎΠ²ΡΡ Π°Π²ΠΈΠ°ΡΠΈΠΎΠ½Π½ΡΡ ΡΠ°ΠΌΠΎΠΏΠΈΡΡΠ΅Π².
AVR ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ: ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΎΠ΅ ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²ΠΎ
Π‘Π΅ΠΌΠ΅ΠΉΡΡΠ²ΠΎ AVR β Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Π² ΡΠ΅Π±Ρ 8 Π±ΠΈΡΠ½ΡΠ΅ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ Π΄Π»Ρ ΡΠΈΡΠΎΠΊΠΎΠ³ΠΎ ΡΠΏΠ΅ΠΊΡΡΠ° Π·Π°Π΄Π°Ρ.
AVR ΠΏΡΠΎΠ΅ΠΊΡΡ
ΠΠ»Ρ ΡΠ»ΠΎΠΆΠ½ΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² Ρ Π±ΠΎΠ»ΡΡΠΈΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ Π²Ρ ΠΎΠ΄ΠΎΠ²/Π²ΡΡ ΠΎΠ΄ΠΎΠ² Π²Π°ΠΌ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½Ρ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ AVR ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²Π° Mega ΠΈ AVR xmega, ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΡΠΏΡΡΠΊΠ°ΡΡΡΡ Π² ΠΊΠΎΡΠΏΡΡΠ°Ρ ΠΎΡ 44 Π΄ΠΎ 100 Π²ΡΠ²ΠΎΠ΄ΠΎΠ² ΠΈ ΠΈΠΌΠ΅ΡΡ Π΄ΠΎ 1024 ΠΊΠ± Flash ΠΏΠ°ΠΌΡΡΠΈ, Π° ΡΠΊΠΎΡΠΎΡΡΡ ΠΈΡ ΡΠ°Π±ΠΎΡΡ β Π΄ΠΎ 32 ΠΌΠΈΠ»Π»ΠΈΠΎΠ½ΠΎΠ² ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π² ΡΠ΅ΠΊΡΠ½Π΄Ρ.
ΠΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π²ΡΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΈΠΌΠ΅ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°ΡΡ Π¨ΠΠ, Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠΉ ΠΠ¦Π ΠΈ Π¦ΠΠ.
ΠΠΈΠ»Π»ΠΈΠΎΠ½Ρ ΡΠ°Π΄ΠΈΠΎΠ»ΡΠ±ΠΈΡΠ΅Π»Π΅ΠΉ ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΡ Π½Π° AVR β ΡΡΠΎ ΡΠ°ΠΌΠΎΠ΅ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΎΠ΅ ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²ΠΎ ΠΠ, ΠΎ Π½ΠΈΡ Π½Π°ΠΏΠΈΡΠ°Π½ΠΎ ΠΎΡΠ΅Π½Ρ ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠ½ΠΈΠ³ Π½Π° ΡΡΡΡΠΊΠΎΠΌ ΠΈ Π΄ΡΡΠ³ΠΈΡ ΡΠ·ΡΠΊΠ°Ρ ΠΌΠΈΡΠ°.
ΠΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ. ΠΠ»Ρ ΠΏΡΠΎΡΠΈΠ²ΠΊΠΈ Π½ΡΠΆΠ΅Π½ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°ΡΠΎΡ, ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΡΠ°ΠΌΡΡ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ½Π½ΡΡ β ΡΡΠΎ AVRISP MKII, ΠΊΠΎΡΠΎΡΡΠΉ Π²Ρ Π»Π΅Π³ΠΊΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ΄Π΅Π»Π°ΡΡ ΠΈΠ· ΡΠ²ΠΎΠ΅ΠΉ Arduino.
ΠΠΎΠΏΡΠ»ΡΡΠ½ΠΎΡΡΡ ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²Π° ΠΠΠ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ Π½Π° Π²ΡΡΠΎΠΊΠΎΠΌ ΡΡΠΎΠ²Π½Π΅ ΡΠΆΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ Π»Π΅Ρ, Π² ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ 10 Π»Π΅Ρ ΠΈΠ½ΡΠ΅ΡΠ΅Ρ ΠΊ Π½ΠΈΠΌ ΠΏΠΎΠ΄ΠΎΠ³ΡΠ΅Π²Π°Π΅Ρ ΠΏΡΠΎΠ΅ΠΊΡ Arduino β ΠΏΠ»Π°ΡΠ° Π΄Π»Ρ ΠΏΡΠΎΡΡΠΎΠ³ΠΎ Π²Ρ ΠΎΠ΄Π° Π² ΠΌΠΈΡ ΡΠΈΡΡΠΎΠ²ΠΎΠΉ ΡΠ»Π΅ΠΊΡΡΠΎΠ½ΠΈΠΊΠΈ.
Π‘ΡΠ΅ΡΡ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ Tiny, Mega
Π§Π΅ΡΠΊΠΎ ΠΎΠΏΠΈΡΠ°ΡΡ ΡΡΠ΅ΡΡ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ° Π½Π΅Π»ΡΠ·Ρ, Π²Π΅Π΄Ρ ΠΎΠ½Π° Π±Π΅Π·Π³ΡΠ°Π½ΠΈΡΠ½Π°, ΠΎΠ΄Π½Π°ΠΊΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠ»Π°ΡΡΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
- Tiny AVR β ΡΠ°ΠΌΡΠ΅ ΠΏΡΠΎΡΡΡΠ΅ Π² ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΎΠΌ ΠΏΠ»Π°Π½Π΅. Π Π½ΠΈΡ ΠΌΠ°Π»ΠΎ ΠΏΠ°ΠΌΡΡΠΈ ΠΈ Π²ΡΠ²ΠΎΠ΄ΠΎΠ² Π΄Π»Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠΈΠ³Π½Π°Π»ΠΎΠ², ΡΠ΅Π½Π° ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ°Ρ. ΠΠ΄Π½Π°ΠΊΠΎ ΡΡΠΎ ΠΈΠ΄Π΅Π°Π»ΡΠ½ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΠΏΡΠΎΡΡΠ΅ΠΉΡΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ², Π½Π°ΡΠΈΠ½Π°Ρ ΠΎΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠΊΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΎΡΠ²Π΅ΡΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ ΠΏΡΠΈΠ±ΠΎΡΠ°ΠΌΠΈ ΡΠ°Π»ΠΎΠ½Π° Π°Π²ΡΠΎΠΌΠΎΠ±ΠΈΠ»Ρ, Π΄ΠΎ ΠΎΡΡΠΈΠ»Π»ΠΎΠ³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΏΡΠΎΠ±Π½ΠΈΠΊΠΎΠ² Π΄Π»Ρ ΡΠ΅ΠΌΠΎΠ½ΡΠ° ΡΠ»Π΅ΠΊΡΡΠΎΠ½ΠΈΠΊΠΈ ΡΠ²ΠΎΠΈΠΌΠΈ ΡΡΠΊΠ°ΠΌΠΈ. ΠΠ½ΠΈ ΡΠ°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π² Arduino-ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅ β Digispark. ΠΡΠΎ ΡΠ°ΠΌΠ°Ρ ΠΌΠ°Π»Π΅Π½ΡΠΊΠ°Ρ Π²Π΅ΡΡΠΈΡ Π°ΡΠ΄ΡΠΈΠ½Ρ ΠΎΡ ΡΡΠΎΡΠΎΠ½Π½Π΅Π³ΠΎ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Ρ; Π²ΡΠΏΠΎΠ»Π½Π΅Π½Π° Π² ΡΠΎΡΠΌΠ°ΡΠ΅ USB-ΡΠ»Π΅ΡΠΊΠΈ.
- Π‘Π΅ΠΌΠ΅ΠΉΡΡΠ²ΠΎ MEGA Π΄ΠΎΠ»Π³ΠΎ ΠΎΡΡΠ°Π²Π°Π»ΠΎΡΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΠΌ Ρ ΠΏΡΠΎΠ΄Π²ΠΈΠ½ΡΡΡΡ ΡΠ°Π΄ΠΈΠΎΠ»ΡΠ±ΠΈΡΠ΅Π»Π΅ΠΉ, ΠΎΠ½ΠΈ ΠΌΠΎΡΠ½Π΅Π΅ ΠΈ ΠΈΠΌΠ΅ΡΡ Π±ΠΎΠ»ΡΡΠΈΠΉ, ΡΠ΅ΠΌ Π² Tiny, ΠΎΠ±ΡΡΠΌ ΠΏΠ°ΠΌΡΡΠΈ ΠΈ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π²ΡΠ²ΠΎΠ΄ΠΎΠ². ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²ΡΠ²Π°ΡΡ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΡ, ΠΎΠ΄Π½Π°ΠΊΠΎ ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²ΠΎ ΠΎΡΠ΅Π½Ρ ΡΠΈΡΠΎΠΊΠΎ Π΄Π»Ρ ΠΊΡΠ°ΡΠΊΠΎΠ³ΠΎ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ. ΠΠΌΠ΅Π½Π½ΠΎ ΠΎΠ½ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈΡΡ Π² ΠΏΠ΅ΡΠ²ΡΡ ΠΏΠ»Π°ΡΠ°Ρ Arduino, Π°ΠΊΡΡΠ°Π»ΡΠ½ΡΠ΅ ΠΏΠ»Π°ΡΡ ΠΎΡΠ½Π°ΡΠ΅Π½Ρ, Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ, ATMEGA
ΠΡΡ ΠΎΠ΄ Π»ΡΠ±ΠΎΠ³ΠΎ ΠΠ Π±Π΅Π· Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΡΡΠΈΠ»ΠΈΡΠ΅Π»Π΅ΠΉ ΠΏΠΎΡΡΠ½Π΅Ρ ΡΠ²Π΅ΡΠΎΠ΄ΠΈΠΎΠ΄Ρ ΠΈΠ»ΠΈ ΡΠ²Π΅ΡΠΎΠ΄ΠΈΠΎΠ΄Π½ΡΡ ΠΌΠ°ΡΡΠΈΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡΠΎΠ², Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ.
AVR xMega ΠΈΠ»ΠΈ ΡΡΠ°ΡΡΠΈΠ΅ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ
Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ Atmel ΡΠΎΠ·Π΄Π°Π»ΠΈ AVR xMega, ΠΊΠ°ΠΊ Π±ΠΎΠ»Π΅Π΅ ΠΌΠΎΡΠ½ΡΠΉ ΠΠ, ΠΏΡΠΈ ΡΡΠΎΠΌ ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°ΡΠΈΠΉ ΠΊ ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²Ρ AVR. ΠΡΠΎ Π±ΡΠ»ΠΎ Π½ΡΠΆΠ½ΠΎ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΎΠ±Π»Π΅Π³ΡΠΈΡΡ ΡΡΡΠ΄ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° ΠΏΡΠΈ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π΅ ΠΊ Π±ΠΎΠ»Π΅Π΅ ΠΌΠΎΡΠ½ΠΎΠΌΡ ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²Ρ.
Π AVR xMega Π΅ΡΡΡ Π΄Π²Π° Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ:
- ΠΠ Ρ Π½Π°ΠΏΡΡΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΏΠΈΡΠ°Π½ΠΈΡ 1.8-2.7 Π²ΠΎΠ»ΡΡΠ°, ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΡΠ°ΡΡΠΎΡΠΎΠΉ Π΄ΠΎ 12 ΠΌΠΡ, ΠΈΡ Π²Ρ ΠΎΠ΄Π° ΡΡΡΠΎΠΉΡΠΈΠ²Ρ ΠΊ Π²Π΅Π»ΠΈΡΠΈΠ½Π΅ Π½Π°ΠΏΡΡΠΆΠ΅Π½ΠΈΡ Π² 3.3 Π;
- ΠΠ Ρ Π½Π°ΠΏΡΡΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΏΠΈΡΠ°Π½ΠΈΡ 2.7-3.6 Π²ΠΎΠ»ΡΡΠ° ΡΠΆΠ΅ ΠΌΠΎΠ³ΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π° Π±ΠΎΠ»Π΅Π΅ Π²ΡΡΠΎΠΊΠΈΡ ΡΠ°ΡΡΠΎΡΠ°Ρ β Π΄ΠΎ 32 ΠΌΠΡ, Π° Π²Ρ ΠΎΠ΄ ΡΡΡΠΎΠΉΡΠΈΠ² ΠΊ 5 Π²ΠΎΠ»ΡΡΠ°ΠΌ.
Π’Π°ΠΊΠΆΠ΅ ΡΡΠΎΠΈΡ ΠΎΡΠΌΠ΅ΡΠΈΡΡ: AVR xMega ΠΎΡΠ»ΠΈΡΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π² Π°Π²ΡΠΎΠ½ΠΎΠΌΠ½ΡΡ ΡΠΈΡΡΠ΅ΠΌΠ°Ρ , ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΈΠΌΠ΅ΡΡ Π½ΠΈΠ·ΠΊΠΎΠ΅ ΡΠ½Π΅ΡΠ³ΠΎΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΠ΅. ΠΠ»Ρ ΠΏΡΠΈΠΌΠ΅ΡΠ°: ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΡ ΡΠ°ΠΉΠΌΠ΅ΡΠ°Ρ ΠΈ ΡΠ°ΡΠ°Ρ ΡΠ΅Π°Π»ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ RTC ΠΏΠΎΡΡΠ΅Π±Π»ΡΡΡ 2 ΠΌΠ ΡΠΎΠΊΠ°, ΠΈ Π³ΠΎΡΠΎΠ²Ρ ΠΊ ΡΠ°Π±ΠΎΡΠ΅ ΠΎΡ ΠΏΡΠ΅ΡΡΠ²Π°Π½ΠΈΡ Π²Π½Π΅ΡΠ½Π΅Π³ΠΎ ΠΈΠ»ΠΈ ΠΏΠΎ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠ°ΠΉΠΌΠ΅ΡΠ°, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ. ΠΠ»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠ΅Π»ΠΎΠ³ΠΎ ΡΡΠ΄Π° ΡΡΠ½ΠΊΡΠΈΠΉ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ 16 ΡΠ°Π·ΡΡΠ΄Π½ΡΡ ΡΠ°ΠΉΠΌΠ΅ΡΠΎΠ².
Π Π°Π±ΠΎΡΠ° Ρ USB ΠΏΠΎΡΡΠΎΠΌ
ΠΠ°ΡΠ½Π΅ΠΌ Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎ Π΄Π»Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ° Π½ΡΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΡΠΉ ΠΏΠΎΡΡ, ΠΎΠ΄Π½Π°ΠΊΠΎ Π½Π° ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ°Ρ COM ΠΏΠΎΡΡ ΡΠ°ΡΡΠΎ ΠΎΡΡΡΡΡΡΠ²ΡΠ΅Ρ. ΠΠ°ΠΊ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ ΠΊ ΡΠ°ΠΊΠΎΠΌΡ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΡ? ΠΡΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ USB-UART, ΡΡΠ° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° ΡΠ΅ΡΠ°Π΅ΡΡΡ ΠΎΡΠ΅Π½Ρ Π»Π΅Π³ΠΊΠΎ. ΠΡΠΎΡΡΠ΅ΠΉΡΠΈΠΉ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ±ΡΠ°ΡΡ Π½Π° ΠΌΠΈΠΊΡΠΎΡΡ Π΅ΠΌΠ°Ρ FT232 ΠΈ Ch440, Π° Π΅Π³ΠΎ ΡΡ Π΅ΠΌΠ° ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π° Π½ΠΈΠΆΠ΅.
Π’Π°ΠΊΠΎΠΉ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½ Π½Π° ΠΏΠ»Π°ΡΠ°Ρ Arduino UNO ΠΈ Aduino Nano.
ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ AVR ΠΈΠΌΠ΅ΡΡ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠΉ (Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΡΠΉ) USB:
- ATmega8U2;
- ATmega16U2;
- ATmega32U2.
Π’Π°ΠΊΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π½Π°ΡΠ»ΠΎ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π΄Π»Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΠ²ΡΠ·ΠΈ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ° ΠΈ Arduino mega2560 ΠΏΠΎ USB, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ Β«ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅ΡΒ» ΡΠΎΠ»ΡΠΊΠΎ UART.
ΠΠ°Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π¦ΠΠ ΠΈ ΠΠ¦Π ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠΎΠ² AVR
Π¦ΠΈΡΡΠΎΠ°Π½Π°Π»ΠΎΠ³ΠΎΠ²ΡΠΌΠΈ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌΠΈ (Π¦ΠΠ) Π½Π°Π·ΡΠ²Π°ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°, ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΡΡΠΈΠ΅ ΡΠΈΠ³Π½Π°Π» Π΅Π΄ΠΈΠ½ΠΈΡ ΠΈ Π½ΠΎΠ»Π΅ΠΉ (ΡΠΈΡΡΠΎΠ²ΠΎΠΉ) Π² Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²ΡΠΉ (ΠΏΠ»Π°Π²Π½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡΠΈΠΉΡΡ). ΠΠ»Π°Π²Π½ΡΠ΅ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ β ΡΠ°Π·ΡΡΠ΄Π½ΠΎΡΡΡ ΠΈ ΡΠ°ΡΡΠΎΡΠ° Π΄ΠΈΡΠΊΡΠ΅ΡΠΈΠ·Π°ΡΠΈΠΈ. Π ΠΠ¦Π ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ΅ΡΡΡ Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²ΡΠΉ ΡΠΈΠ³Π½Π°Π» Π² ΡΠΈΡΡΠΎΠ²ΠΎΠΉ Π²ΠΈΠ΄.
ΠΠΎΡΡΡ Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ ΠΠ¦Π Π½ΡΠΆΠ½Ρ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ ΠΊ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²ΡΠ΅ Π΄Π°ΡΡΠΈΠΊΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ΅Π·ΠΈΡΡΠΈΠ²Π½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°.
Π¦ΠΠ Π½Π°ΡΡΠ» ΡΠ²ΠΎΡ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π² ΡΠΈΡΡΠΎΠ²ΡΡ ΡΠΈΠ»ΡΡΡΠ°Ρ , Π³Π΄Π΅ Π²Ρ ΠΎΠ΄Π½ΠΎΠΉ ΡΠΈΠ³Π½Π°Π» ΠΏΡΠΎΡ ΠΎΠ΄ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΡ ΠΈ Π²ΡΠ²ΠΎΠ΄ ΡΠ΅ΡΠ΅Π· Π¦ΠΠ Π² Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²ΠΎΠΌ Π²ΠΈΠ΄Π΅, Π½ΠΈΠΆΠ΅ Π²Ρ Π²ΠΈΠ΄ΠΈΡΠ΅ Π½Π°Π³Π»ΡΠ΄Π½ΡΠ΅ ΠΎΡΡΠΈΠ»Π»ΠΎΠ³ΡΠ°ΠΌΠΌΡ. ΠΠΈΠΆΠ½ΠΈΠΉ Π³ΡΠ°ΡΠΈΠΊ β Π²Ρ ΠΎΠ΄Π½ΠΎΠΉ ΡΠΈΠ³Π½Π°Π», ΡΡΠ΅Π΄Π½ΠΈΠΉ β ΡΡΠΎΡ ΠΆΠ΅ ΡΠΈΠ³Π½Π°Π», Π½ΠΎ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°Π½Π½ΡΠΉ Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²ΡΠΌ ΡΠΈΠ»ΡΡΡΠΎΠΌ, Π° Π²Π΅ΡΡ Π½ΠΈΠΉ β ΡΠΈΡΡΠΎΠ²ΠΎΠΉ ΡΠΈΠ»ΡΡΡ Π½Π° ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ΅ Tiny45. Π€ΠΈΠ»ΡΡΡ Π½ΡΠΆΠ΅Π½ Π΄Π»Ρ ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½ΡΠΆΠ½ΠΎΠ³ΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° ΡΠ°ΡΡΠΎΡ ΡΠΈΠ³Π½Π°Π»Π°, Π° ΡΠ°ΠΊΠΆΠ΅ Π΄Π»Ρ ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠΈΠ³Π½Π°Π»Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΡΠΎΡΠΌΡ.
Π‘Ρ Π΅ΠΌΠ° ΠΎΡΡΠΈΠ»Π»ΠΎΠ³ΡΠ°ΡΠ° Π½Π° ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ΅ Atmega328ΠΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΠ¦Π β ΡΡΠΎ ΠΎΡΡΠΈΠ»Π»ΠΎΠ³ΡΠ°Ρ Π½Π° ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ΅. Π ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΡ, ΡΠ°ΡΡΠΎΡΡ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ² ΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° ΠΠ ΠΎΡΡΠ»Π΅Π΄ΠΈΡΡ Π½Π΅ ΡΠ΄Π°ΡΡΡΡ, Π° Π²ΠΎΡ ΡΠ°ΡΡΠΎΡΡ ΠΏΠΎΡΡΠ΄ΠΊΠ° 1 ΠΌΠΡ β Π»Π΅Π³ΠΊΠΎ. ΠΠ½ ΡΡΠ°Π½Π΅Ρ ΠΎΡΠ»ΠΈΡΠ½ΡΠΌ ΠΏΠΎΠΌΠΎΡΠ½ΠΈΠΊΠΎΠΌ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ ΠΈΠΌΠΏΡΠ»ΡΡΠ½ΡΠΌΠΈ Π±Π»ΠΎΠΊΠ°ΠΌΠΈ ΠΏΠΈΡΠ°Π½ΠΈΡ.
Π Π·Π΄Π΅ΡΡ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΎ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΠ΅ Π²ΠΈΠ΄Π΅ΠΎ ΡΡΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°, ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ ΠΏΠΎ ΡΠ±ΠΎΡΠΊΠ΅ ΠΈ ΡΠΎΠ²Π΅ΡΡ ΠΎΡ Π°Π²ΡΠΎΡΠ°:
ΠΠ°ΠΊΡΡ Π»ΠΈΡΠ΅ΡΠ°ΡΡΡΡ ΡΠΈΡΠ°ΡΡ ΠΎ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ°Ρ AVR Π΄Π»Ρ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΡ ?
ΠΠ»Ρ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ ΠΌΠΎΠ»ΠΎΠ΄ΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΡΡΠΎΠ² Π½Π°ΠΏΠΈΡΠ°Π½Ρ Π³ΠΎΡΡ Π»ΠΈΡΠ΅ΡΠ°ΡΡΡΡ, Π΄Π°Π²Π°ΠΉΡΠ΅ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ· Π½ΠΈΡ :
- ΠΠ²ΡΡΠΈΡΠ΅Π΅Π² Π.Π. Β«ΠΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ AVR ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²Π° MegaΒ». Π ΠΊΠ½ΠΈΠ³Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½Π° Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ° ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ°. ΠΠΏΠΈΡΠ°Π½ΠΎ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ΅Ρ ΡΠ΅Π³ΠΈΡΡΡΠΎΠ² ΠΈ ΡΠ°ΠΉΠΌΠ΅ΡΠΎΠ², Π° ΡΠ°ΠΊΠΆΠ΅ ΠΈΡ ΡΠ΅ΠΆΠΈΠΌΡ ΡΠ°Π±ΠΎΡΡ. ΠΠ·ΡΡΠ΅Π½Π° ΡΠ°Π±ΠΎΡΠ° ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ² ΡΠ²ΡΠ·ΠΈ Ρ Π²Π½Π΅ΡΠ½ΠΈΠΌ ΠΌΠΈΡΠΎΠΌ SPI ΠΈ Ρ. Π΄. Π‘ΠΈΡΡΠ΅ΠΌΠ° ΠΊΠΎΠΌΠ°Π½Π΄ ΡΠ°ΡΠΊΡΡΡΠ° Π΄Π»Ρ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΡ ΡΠ°Π΄ΠΈΠΎΠ»ΡΠ±ΠΈΡΠ΅Π»Ρ ΡΡΠ΅Π΄Π½Π΅Π³ΠΎ ΡΡΠΎΠ²Π½Ρ. ΠΠ°ΡΠ΅ΡΠΈΠ°Π» ΠΊΠ½ΠΈΠ³ΠΈ Β«ΠΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ avr ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²Π° mega: ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΒ» ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ ΠΈΠ·ΡΡΠΈΡΡ ΡΡΡΡΠΊΡΡΡΡ ΡΠΈΠΏΠ° ΠΈ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· Π΅Π³ΠΎ ΡΠ·Π»ΠΎΠ², ΡΡΠΎ, Π±Π΅Π·ΡΡΠ»ΠΎΠ²Π½ΠΎ, Π²Π°ΠΆΠ½ΠΎ Π΄Π»Ρ Π»ΡΠ±ΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ° ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠΎΠ².
- ΠΠ΅Π»ΠΎΠ² Π.Π. β Β«ΠΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ AVR Π² ΡΠ°Π΄ΠΈΠΎΠ»ΡΠ±ΠΈΡΠ΅Π»ΡΡΠΊΠΎΠΉ ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅Β». ΠΠ°ΠΊ Π²ΠΈΠ΄Π½ΠΎ ΠΈΠ· Π½Π°Π·Π²Π°Π½ΠΈΡ, ΡΡΠ° ΠΊΠ½ΠΈΠ³Π°, Π² Π±ΠΎΠ»ΡΡΠ΅ΠΉ ΡΡΠ΅ΠΏΠ΅Π½ΠΈ, ΠΏΠΎΡΠ²ΡΡΠ΅Π½Π° ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΡΠΎΡΠΎΠ½Π΅ ΡΠ°Π±ΠΎΡΡ Ρ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ°ΠΌΠΈ. ΠΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½ ΡΡΠ°Π²ΡΠΈΠΉ ΠΊΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ ATiny2313, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΡΡ Π΅ΠΌΡ Π΄Π»Ρ ΡΠ±ΠΎΡΠΊΠΈ.
- Π₯Π°ΡΡΠΎΠ² Π.Π―. Β«ΠΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ AVR. ΠΡΠ°ΠΊΡΠΈΠΊΡΠΌ Π΄Π»Ρ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΡ Β». ΠΠΎΠΌΠΎΠΆΠ΅Ρ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ Π² AVR studio 4, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΡΠ°ΡΡΠΎΠ²ΠΎΠΌ Π½Π°Π±ΠΎΡΠ΅ STK ΠΡ Π½Π°ΡΡΠΈΡΠ΅ΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΡΠΌΠΈ ΠΈ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΡΠΌΠΈ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°ΠΌΠΈ, ΡΠ°ΠΊΠΈΠΌΠΈ ΠΊΠ°ΠΊ UART, I2C ΠΈ SPI. ΠΠ½ΠΈΠ³Π° Β«ΠΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ AVR. ΠΡΠ°ΠΊΡΠΈΠΊΡΠΌ Π΄Π»Ρ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΡ Β» Π½Π°ΠΏΠΈΡΠ°Π½Π° ΠΏΡΠ΅ΠΏΠΎΠ΄Π°Π²Π°ΡΠ΅Π»Π΅ΠΌ ΠΠΠ’Π£ ΠΈΠΌ. Π.Π.ΠΠ°ΡΠΌΠ°Π½Π° ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠ°ΠΌ Π΄Π»Ρ ΠΈΠ·ΡΡΠ΅Π½ΠΈΡ ΡΡΠΎΠΉ ΡΠ΅ΠΌΡ.
ΠΠ·ΡΡΠ΅Π½ΠΈΠ΅ ΡΡΠΎΠ³ΠΎ ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²Π° ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠΎΠ² ΠΏΠΎΠΌΠΎΠ³Π»ΠΎ Π½Π°ΡΠ°ΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΈ ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ ΠΏΡΠΎΠ΅ΠΊΡΡ ΠΌΠ½ΠΎΠ³ΠΈΠΌ Π»ΡΠ±ΠΈΡΠ΅Π»ΡΠΌ ΡΠ»Π΅ΠΊΡΡΠΎΠ½ΠΈΠΊΠΈ. Π‘ΡΠΎΠΈΡ Π½Π°ΡΠΈΠ½Π°ΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²Π°, ΡΡΠΎΠ±Ρ Π²ΡΠ΅Π³Π΄Π° ΠΈΠΌΠ΅ΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ ΠΌΠΎΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ.
Π‘ΡΠ΅Π΄ΠΈ ΡΠ°Π΄ΠΈΠΎΠ»ΡΠ±ΠΈΡΠ΅Π»Π΅ΠΉ Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ Π΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΠΊΠΎΠ½ΠΊΡΡΠ΅Π½Ρ AVR β PIC ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ.
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠΎΠ² Π² AtmelStudio 6. Π§Π°ΡΡΡ 1. ΠΠ΅ΡΠ²ΡΠ΅ ΡΠ°Π³ΠΈ
Π‘ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ΅ ΡΠ°Π΄ΠΈΠΎΠ»ΡΠ±ΠΈΡΠ΅Π»ΡΡΡΠ²ΠΎ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΡ Π±Π΅Π·Β ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠΎΠ², ΠΈΒ ΡΡΠΎ ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΠΎ. ΠΒ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ Π΄Π΅ΡΡΡΠΈΠ»Π΅ΡΠΈΡ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π΅ΠΉ ΡΡΠ°Π»ΠΈ ΡΠΈΡΠΎΠΊΠΎ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Ρ Π²Β ΡΠ°Π·Π½ΡΡ ΡΡΠ΅ΡΠ°Ρ Π΄Π΅ΡΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΠ°. ΠΠ΅ΡΠ΅Π΄ΠΊΠΎ ΠΈΡ Β ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΡΡΠ΅ΡΠΈΡΡ Π²Β ΡΠ°ΠΌΡΡ Π½Π΅ΠΎΠΆΠΈΠ΄Π°Π½Π½ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ ΠΈΒ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΡΡ . ΠΡ ΡΒ Π²Π°ΠΌΠΈ ΡΠ²Π»ΡΠ΅ΠΌΡΡ ΡΠ²ΠΈΠ΄Π΅ΡΠ΅Π»ΡΠΌΠΈ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠΈΠ·Π°ΡΠΈΠΈ ΠΈΒ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΠΈ ΠΎΠΊΡΡΠΆΠ°ΡΡΠΈΡ Π½Π°Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ². ΠΡΡΠΈΠ½Π° ΡΠ°ΠΊΠΎΠ²Π°, ΡΡΠΎΒ Π±Π΅Π·Β Π·Π½Π°Π½ΠΈΡ ΠΎΡΠ½ΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΊΠΎΠ½ΠΊΡΡΠ΅Π½ΡΠΎΡΠΏΠΎΡΠΎΠ±Π½ΡΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΡΡΠ°Π»ΠΎ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎβ¦
Π‘ΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΠ΅ / Contents
ΠΡΠ»ΠΈ Π²Ρ ΡΠΈΡΠ°Π΅ΡΠ΅ ΡΡΡ ΡΡΠ°ΡΡΡ, Π²Π΅ΡΠΎΡΡΠ½ΠΎ ΡΒ Π²Π°Ρ Π²ΠΎΠ·Π½ΠΈΠΊΠ»ΠΎ ΠΆΠ΅Π»Π°Π½ΠΈΠ΅ ΠΏΠΎΠ½ΡΡΡ, ΠΊΠ°ΠΊΒ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ, ΠΈΒ ΡΠΊΠΎΡΠ΅Π΅ Π²ΡΠ΅Π³ΠΎ ΠΏΠΎΡΠ²ΠΈΠ»ΠΈΡΡ Π²ΠΎΠΏΡΠΎΡΡ:1. ΠΠ°ΠΊΠΎΠΉ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ Π²ΡΠ±ΡΠ°ΡΡ Π΄Π»ΡΒ ΡΠ°Π±ΠΎΡΡ?
2. ΠΠ°ΠΊΡΡ ΡΡΠ΅Π΄Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»ΡΒ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π²ΡΠ±ΡΠ°Π½Π½ΠΎΠ³ΠΎ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ°?
3. ΠΠ°ΠΊΒ ΠΏΡΠΎΡΠΈΠ²Π°ΡΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ, ΠΈΒ ΠΊΠ°ΠΊΠΈΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΏΡΠΈΠ±ΠΎΡΡ ΠΈΒ Π°ΠΊΡΡΠ΅ΡΡΠ°ΡΡ Π½ΡΠΆΠ½Ρ Π΄Π»ΡΒ ΡΠ΄ΠΎΠ±Π½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ ΡΒ Π½ΠΈΠΌΠΈ?
4. ΠΠ°ΠΊΡΡ Π»ΠΈΡΠ΅ΡΠ°ΡΡΡΡ ΠΈΠ·ΡΡΠ°ΡΡ?
5. ΠΠ΄Π΅ Π²Β ΠΈΠ½ΡΠ΅ΡΠ½Π΅ΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°Π²Π°ΡΡ Π²ΠΎΠΏΡΠΎΡΡ ΠΈΒ ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠ΅ ΠΎΡΠ²Π΅ΡΡ?
ΠΠΎΠΏΡΠΎΠ±ΡΠ΅ΠΌ ΠΎΡΠ²Π΅ΡΠΈΡΡ Π½Π°Β ΡΡΠΈ Π²ΠΎΠΏΡΠΎΡΡ.
ΠΠΎΠ»ΡΡΠΎΠΉ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΎΡΡΡΡ ΡΒ ΡΠ°Π΄ΠΈΠΎΠ»ΡΠ±ΠΈΡΠ΅Π»Π΅ΠΉ ΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ 8-Π±ΠΈΡΠ½ΡΠ΅ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ PIC ΡΠΈΡΠΌΡ Microchip Technology ΠΈΒ AVR ΡΠΈΡΠΌΡ Atmel, 16-Π±ΠΈΡΠ½ΡΠ΅ MSP430 ΡΠΈΡΠΌΡ TI, Π°Β ΡΠ°ΠΊΠΆΠ΅ 32-Π±ΠΈΡΠ½ΡΠ΅ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ, Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ ARM.ΠΒ ΠΏΡΠΎΠΌΡΡΠ»Π΅Π½Π½ΠΎΡΡΠΈ, Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΈΠ½Π°ΡΠ΅, ΠΏΠ΅ΡΠ²ΠΎΠ΅ ΠΌΠ΅ΡΡΠΎ ΡΒ Π±ΠΎΠ»ΡΡΠΈΠΌ ΠΎΡΡΡΠ²ΠΎΠΌ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ Renesas Electronics Π½Π°Β Π²ΡΠΎΡΠΎΠΌ Freescale, Π½Π°Β ΡΡΠ΅ΡΡΠ΅ΠΌ Samsung, Π·Π°ΡΠ΅ΠΌ ΠΈΠ΄ΡΡ Microchip ΠΈΒ TI, Π΄Π°Π»Π΅Π΅ Π²ΡΠ΅ ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅.
ΠΠΎΠΏΡΠ»ΡΡΠ½ΠΎΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ ΡΠ΅Π½ΠΎΠΉ ΠΈΒ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΡΡΡΡ, Π½Π΅ΠΌΠ°Π»ΡΡ ΡΠΎΠ»Ρ ΠΈΠ³ΡΠ°ΡΡ Π½Π°Π»ΠΈΡΠΈΠ΅ ΡΠ΅Ρ
Π½ΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΈΒ ΡΡΠΎΠΈΠΌΠΎΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΡΠΎΠΏΡΠΎΠ²ΠΎΠΆΠ΄Π΅Π½ΠΈΡ.
ΠΡ Π±ΡΠ΄Π΅ΠΌ ΠΈΠ·ΡΡΠ°ΡΡ 8-Π±ΠΈΡΠ½ΡΠ΅ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ AVR, ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²Π° ATMEGA 8 ΠΈΒ 16 ΡΠ΅ΡΠΈΠΈ. ΠΡΠ±ΠΎΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΠ»ΡΡ, ΠΎΠΏΡΡΡΒ ΠΆΠ΅ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΡΡΡΡ, Π½Π°Π»ΠΈΡΠΈΠ΅ΠΌ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π° Π»ΡΠ±ΠΈΡΠ΅Π»ΡΡΠΊΠΈΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΎΠΊ, ΠΎΠ³ΡΠΎΠΌΠ½ΡΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ ΡΡΠ΅Π±Π½ΠΎΠ³ΠΎ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Π°. ΠΠ°Π»ΠΈΡΠΈΠ΅ΠΌ ΡΠ°Π·Π½ΠΎΠΎΠ±ΡΠ°Π·Π½ΡΡ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² ΠΈΒ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΡΡ ΡΡΠΎΠ³ΠΎ ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²Π°.
ΠΠ»ΡΒ AVR ΡΠΎΠ·Π΄Π°Π½Ρ ΡΠ°Π·Π½ΡΠ΅ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΡΠ΅Π΄Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ (IDE, Integrated development environment).IDE β ΡΡΠΎ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΡ ΡΡΠ΅Π΄ΡΡΠ², ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠ°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ°ΠΌΠΈ Π΄Π»ΡΒ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ (ΠΠ), Π²Β ΡΠΎΡΡΠ°Π² ΠΊΠΎΡΠΎΡΠΎΠΉ Π²Ρ ΠΎΠ΄ΡΡ:
β’ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΠΉ ΡΠ΅Π΄Π°ΠΊΡΠΎΡ,
β’ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ ΠΈ/ΠΈΠ»ΠΈΒ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡ,
β’ ΡΡΠ΅Π΄ΡΡΠ²Π° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΠΈ ΡΠ±ΠΎΡΠΊΠΈ,
β’ ΠΎΡΠ»Π°Π΄ΡΠΈΠΊ.
ΠΠ°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΠ΅ ΠΈΠ·Β Π½ΠΈΡ
AVRStudio, ATmelStudio, WINAVR, CodeVision, IAR Embedded Workbench.
ΠΠ»ΡΒ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΏΠΈΡΠ°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΌΡ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΠΎΠΉ IDE ATmelStudio Π²Π΅ΡΡΠΈΠΈ 6 ΠΈΒ Π²ΡΡΠ΅.
Π‘ΠΊΠ°ΡΠ°ΡΡ Atmel Studio ΠΌΠΎΠΆΠ½ΠΎ ΡΒ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ°ΠΉΡΠ° ΠΏΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΈ (ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΡ Π°Π±ΡΠΎΠ»ΡΡΠ½ΠΎ Π±Π΅ΡΠΏΠ»Π°ΡΠ½Π°Ρ ΠΈΒ Π½ΠΈΒ ΠΊΒ ΡΠ΅ΠΌΡ Π½Π΅Β ΠΎΠ±ΡΠ·ΡΠ²Π°Π΅Ρ!)
ATmelStudio ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΏΡΠΎΠ΅ΠΊΡΡ, ΠΈΒ ΠΏΠΈΡΠ°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΊΠ°ΠΊΒ Π²Β Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ΅, ΡΠ°ΠΊ ΠΈΒ Π½Π°Β Π‘Π.
ΠΠ·Π½Π°ΡΠ°Π»ΡΠ½ΠΎ Π²ΡΠ΅Π³Π΄Π° ΡΡΠΎΠΈΡ Π²ΠΎΠΏΡΠΎΡ: ΠΊΠ°ΠΊΠΎΠΉ ΡΠ·ΡΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π²ΡΠ±ΡΠ°ΡΡ, ΡΡΠΎΠ±Ρ ΠΏΠΈΡΠ°ΡΡ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ?
ΠΡΠ²Π΅ΡΡ ΠΏΡΠΎΡΡΠΎ: Π½ΡΠΆΠ½ΠΎ ΡΠΌΠ΅ΡΡ ΠΏΠΈΡΠ°ΡΡ ΠΊΠ°ΠΊΒ ΠΌΠΈΠ½ΠΈΠΌΡΠΌ Π½Π°Β Π΄Π²ΡΡ
ΡΠ·ΡΠΊΠ°Ρ
Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ΅ ΠΈΒ Π‘Π. ΠΡΡΠ΅ΠΌΠ±Π»Π΅Ρ ΠΏΡΠΎΡΡΠΎ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌ, ΠΊΠΎΠ³Π΄Π° Π½ΡΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°ΡΡ Π±ΡΡΡΡΡΠ΅ ΠΈΒ ΠΊΠΎΠΌΠΏΠ°ΠΊΡΠ½ΡΠ΅ ΠΏΠΎΠ΄ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΈΒ ΠΌΠ°ΠΊΡΠΎΡΡ, ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ Π΄ΡΠ°ΠΉΠ²Π΅ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ². ΠΠΎ, ΠΊΠΎΠ³Π΄Π° ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠΎΠ·Π΄Π°ΡΡ ΠΎΠ±ΡΠ΅ΠΌΠ½ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ, ΠΏΠΎΡΡΡΠΎΠ΅Π½Π½ΡΠΉ Π½Π°Β ΡΠ»ΠΎΠΆΠ½ΡΡ
Π°Π»Π³ΠΎΡΠΈΡΠΌΠ°Ρ
, Π±Π΅Π·Β Π·Π½Π°Π½ΠΈΡ Π‘Π ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΡΡΠ°ΡΠ΅Π½ΠΎ ΠΎΡΠ΅Π½Ρ ΠΌΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Π²Β ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΠΎΡΠ»Π°Π΄ΠΊΠΈ, Π°Β Π΅ΡΠ»ΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ½Π΅Ρ ΠΆΠ΅Π»Π°Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅Π½Π΅ΡΡΠΈ Π½Π°Β Π΄ΡΡΠ³ΡΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ PIC18, ΠΈΠ»ΠΈΒ STM, ΠΌΠΎΠΆΠ΅Ρ ΡΡΠ°ΡΡ Π½Π΅ΡΠ°Π·ΡΠ΅ΡΠΈΠΌΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΎΠΉ.
ΠΡΠΎΠΌΠ΅ ΡΡΠΎΠ³ΠΎ, ΡΠ΅ΠΉΡΠ°Ρ ΠΏΠΎΡΠ²ΠΈΠ»ΠΈΡΡ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΡΠ΅ Π²ΡΡΠΈΡΠ»ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ Arduino, ΡΠ°Π±ΠΎΡΠ° ΡΒ ΠΊΠΎΡΠΎΡΡΠΌΠΈ ΡΡΠ΅Π±ΡΠ΅Ρ Π·Π½Π°Π½ΠΈΠΉ ΡΠ·ΡΠΊΠ° Π‘Π++.
ΠΠΎΡΡΠΎΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΠΏΠΈΡΠ°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΊΠ°ΠΊΒ Π²Β Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ΅, ΡΠ°ΠΊ ΠΈΒ Π½Π°Β Π‘Π.
Π§ΡΠΎΠ±Ρ Π½Π°Π³Π»ΡΠ΄Π½ΠΎ Π²ΠΈΠ΄Π΅ΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΡΠ²ΠΎΠ΅ΠΉ ΡΠ°Π±ΠΎΡΡ, Π½Π΅Β ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΏΠ°ΡΠ»ΡΠ½ΠΈΠΊ ΠΈΠ»ΠΈΒ ΠΌΠ°ΠΊΠ΅ΡΠ½ΡΡ ΠΏΠ»Π°ΡΡ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Proteus.
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ Π΄Π°ΡΠ°Π³ΠΎΡΡΠΊΠΈΠΉ ΠΊΠΈΡΒ β ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°ΡΠΎΡ Project-005 Β«D-AVR910Β». ΠΡΠΎΠΌΠ΅ ΡΡΠΎΠ³ΠΎ, Π½ΡΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΈΠΎΠ±ΡΠ΅ΡΡΠΈ ΠΌΠ°ΠΊΠ΅ΡΠ½ΡΠ΅ ΠΏΠ»Π°ΡΡ, Π±Π»ΠΎΠΊ ΠΏΠΈΡΠ°Π½ΠΈΡ ΡΒ Π²ΡΡ ΠΎΠ΄Π½ΡΠΌ Π½Π°ΠΏΡΡΠΆΠ΅Π½ΠΈΠ΅ΠΌ 5 ΠΠΎΠ»ΡΡ. ΠΠΎΠΆΠ½ΠΎ Π²Β ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΠ ΡΒ ΠΌΠ°Π»ΡΠΌΠΈ ΠΏΡΠ»ΡΡΠ°ΡΠΈΡΠΌΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π½Π°Ρ ΠΊΠΈΡ Project-006 Β«POWER FILTERΒ», ΠΏΡΠΈΠΌΠ΅Π½ΠΈΠ² ΡΡΠ°Π±ΠΈΠ»ΠΈΡΡΠΎΠ½ Π½Π°Β 5 ΠΠΎΠ»ΡΡ.ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΡΠΎΒ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ ΠΌΡ ΡΒ ΠΠ³ΠΎΡΠ΅ΠΌ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈΠΌ ΠΏΡΠΎΠ΅ΠΊΡ Π΄Π»ΡΒ ΡΠ±ΠΎΡΠΊΠΈ ΠΎΡΠ»Π°Π΄ΠΎΡΠ½ΠΎΠΉ ΠΏΠ»Π°ΡΡ.ΠΒ Π²ΠΎΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ:
β’ ΠΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ AVR Π½Π°Β Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ΅. Π Π΅Π²ΠΈΡ, 2011
β’ 1000 ΠΈΒ ΠΎΠ΄Π½Π° ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ½Π°Ρ ΡΡ Π΅ΠΌΠ° ΠΡΠΏ. 1-2. Π ΡΠΌΠΈΠΊ, 2010-2011
β’ 10 ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΡ ΡΡΡΡΠΎΠΉΡΡΠ² Π½Π°Β ΠΠ AVR ΠΠ½ΠΈΠ³Π° 1-2. ΠΡΠ°Π²ΡΠ΅Π½ΠΊΠΎ, 2008-2009
β’ Π‘Π°ΠΌΠΎΡΡΠΈΡΠ΅Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° ΡΡΡΡΠΎΠΉΡΡΠ² Π½Π°Β ΠΠ AVR. ΠΠ΅Π»ΠΎΠ², 2008
β’ ΠΠ AVR ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ² Tiny ΠΈΒ Atmega. ΠΡΡΡΠΈΡΠ΅Π΅Π², 2008
β’ CodeVisionAVR. ΠΠΎΡΠΎΠ±ΠΈΠ΅ Π΄Π»ΡΒ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΡ . ΠΠ΅Π±Π΅Π΄Π΅Π², 2008
β’ ΠΠΈΠΊΡΠΎΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ½ΠΎΠ΅ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²Π°ΠΌΠΈ, ΡΠΈΡΠΈΡΡΠΎΡΡ, ΡΠ΅Π»Π΅. ΠΠ΅Π»ΠΎΠ², 2008
β’ ΠΠ½Π°Π»ΠΎΠ³ΠΎΠ²ΡΠ΅ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ ΠΠ. Π‘ΡΡΠ°ΡΠ΄, ΠΠΎΠ»Π», 2007
β’ Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ ΡΡΡΡΠΎΠΉΡΡΠ²Π° Π½Π°Β ΠΠ AVR. ΠΠ΅Π»ΠΎΠ², 2007
β’ ΠΠ AVR Π²Β ΡΠ°Π΄ΠΈΠΎΠ»ΡΠ±ΠΈΡΠ΅Π»ΡΡΠΊΠΎΠΉ ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅. ΠΠΎΠ»Π½ΡΠΉ ΡΠ°Π·Π±ΠΎΡ ATTINY2313. ΠΠ΅Π»ΠΎΠ², 2007
β’ Π‘Π΅ΡΠ΅Π²ΠΎΠΉ ΠΈΒ ΠΌΠ΅ΠΆΡΠ΅ΡΠ΅Π²ΠΎΠΉ ΠΎΠ±ΠΌΠ΅Π½ Π΄Π°Π½Π½ΡΠΌΠΈ ΡΒ ΠΠ. ΠΠ΄ΠΈ, 2007
β’ ΠΠ AVR. ΠΏΡΠ°ΠΊΡΠΈΠΊΡΠΌ Π΄Π»ΡΒ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΡ . Π₯Π°ΡΡΠΎΠ², 2007
β’ ΠΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ AVR Π‘Ρ Π΅ΠΌΡ, Π°Π»Π³ΠΎΡΠΈΡΠΌΡ, ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. ΠΠ°ΡΠ°Π½ΠΎΠ², 2006
β’ ΠΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ AVR. ΠΠ²ΠΎΠ΄Π½ΡΠΉ ΠΊΡΡΡ. ΠΠΎΡΡΠΎΠ½, 2006
β’ ΠΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅, ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈΒ ΡΠ΅Π³ΡΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΒ ΠΏΠΎΠΌΠΎΡΡΡ AVR. Π’ΡΠ°ΠΌΠΏΠ΅ΡΡ, 2006
β’ ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π°Β ΡΠ·ΡΠΊΠ΅ Π‘Β Π΄Π»ΡΒ AVR ΠΈΒ PIC ΠΠ. Π¨ΠΏΠ°ΠΊ, 2006
β’ ΠΠΎΠ½ΡΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ² Π½Π°Β ΠΠ. ΠΠ΅Π»ΠΎΠ², 2005
β’ ΠKΒ β ΡΡΠΎΒ ΠΆΠ΅ ΠΏΡΠΎΡΡΠΎ, ΡΠΎΠΌΠ° 1-3. Π€ΡΡΠ½Π·Π΅, 2002-2003
β’ Π―Π·ΡΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π‘ΠΈ, 2-Π΅ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅. ΠΠ΅ΡΠ½ΠΈΠ³Π°Π½, Π ΠΈΡΡΠΈ, 2009
β’ ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠΎΠ² ATMEL Π½Π°Β ΡΠ·ΡΠΊΠ΅ Π‘. ΠΡΠΎΠΊΠΎΠΏΠ΅Π½ΠΊΠΎ, 2012ΠΠ°Π΄Π°Π²Π°ΡΡ Π²ΠΎΠΏΡΠΎΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°Β Π½Π°ΡΠ΅ΠΌ ΠΈΠ»ΠΈΒ Π»ΡΠ±ΠΎΠΌ Π΄ΡΡΠ³ΠΎΠΌ ΡΠΎΡΡΠΌΠ΅, Π³Π΄Π΅ ΡΠ°ΠΊ ΠΈΠ»ΠΈΒ ΠΈΠ½Π°ΡΠ΅ Π·Π°ΡΡΠΎΠ½ΡΡΡ ΡΠ΅ΠΌΡ ΠΏΠΎΒ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ°ΠΌ. ΠΠ»Π°Π²Π½ΠΎΠ΅ Π½Π°Β ΡΠΎΡΡΠΌΠ°Ρ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΡΠΎΡΠΌΡΠ»ΠΈΡΠΎΠ²Π°ΡΡ Π²ΠΎΠΏΡΠΎΡΡ, ΡΡΠΎΠ±Ρ ΡΠ΅ΡΠΊΠΎ ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΠΎΡΠ²Π΅ΡΡ. ΠΠ±ΡΡΡΠ°ΠΊΡΠ½ΡΠ΅ Π²ΠΎΠΏΡΠΎΡΡ Π½Π΅Β ΠΏΡΠΈΠ²Π΅ΡΡΡΠ²ΡΡΡΡΡ, ΠΈΒ ΡΠΊΠΎΡΠ΅Π΅ Π²ΡΠ΅Π³ΠΎ Π²ΠΌΠ΅ΡΡΠΎ ΠΎΡΠ²Π΅ΡΠ° Π²Ρ ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ ΠΆΠ΅ΡΡΠΊΡΡ ΠΊΡΠΈΡΠΈΠΊΡ, ΠΈΠ»ΠΈΒ Π²Π°Ρ Π²ΠΎΠΏΡΠΎΡ ΠΎΡΡΠ°Π½Π΅ΡΡΡ Π±Π΅Π·Β Π²Π½ΠΈΠΌΠ°Π½ΠΈΡ! β’ 8-ΡΠ°Π·ΡΡΠ΄Π½ΡΠΉ Π²ΡΡΠΎΠΊΠΎΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ AVR ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ ΡΒ ΠΌΠ°Π»ΡΠΌ ΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΠ΅ΠΌ
β’ ΠΡΠΎΠ³ΡΠ΅ΡΡΠΈΠ²Π½Π°Ρ RISC Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°
130 Π²ΡΡΠΎΠΊΠΎΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄, Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π·Π°Β ΠΎΠ΄ΠΈΠ½ ΡΠ°ΠΊΡΠΎΠ²ΡΠΉ ΡΠΈΠΊΠ»
32 8-ΡΠ°Π·ΡΡΠ΄Π½ΡΡ ΡΠ°Π±ΠΎΡΠΈΡ ΡΠ΅Π³ΠΈΡΡΡΠ° ΠΎΠ±ΡΠ΅Π³ΠΎ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΡ
ΠΠΎΠ»Π½ΠΎΡΡΡΡ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΡΠ°Π±ΠΎΡΠ°
ΠΡΠΈΠ±Π»ΠΈΠΆΠ°ΡΡΠ°ΡΡΡ ΠΊΒ 16 MIPS (ΠΏΡΠΈΒ ΡΠ°ΠΊΡΠΎΠ²ΠΎΠΉ ΡΠ°ΡΡΠΎΡΠ΅ 16 ΠΠΡ) ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ
ΠΡΡΡΠΎΠ΅Π½Π½ΡΠΉ 2-ΡΠΈΠΊΠ»ΠΎΠ²ΡΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ½ΠΎΠΆΠΈΡΠ΅Π»Ρ
β’ ΠΠ½Π΅ΡΠ³ΠΎΠ½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠ°Ρ ΠΏΠ°ΠΌΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ ΠΈΒ Π΄Π°Π½Π½ΡΡ
8 ΠΠ±Π°ΠΉΡ Π²Π½ΡΡΡΠΈΡΠΈΡΡΠ΅ΠΌΠ½ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ΅ΠΌΠΎΠΉ Flash ΠΏΠ°ΠΌΡΡΠΈ (In-System Self-Programmable Flash)
ΠΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ 1000 ΡΠΈΠΊΠ»ΠΎΠ² ΡΡΠΈΡΠ°Π½ΠΈΡ/Π·Π°ΠΏΠΈΡΠΈ
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΊΡΠΎΡ Π·Π°Π³ΡΡΠ·ΠΎΡΠ½ΡΡ
ΠΊΠΎΠ΄ΠΎΠ² ΡΒ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΡΠΌΠΈ Π±ΠΈΡΠ°ΠΌΠΈ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ
ΠΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ ΡΠ΅ΠΆΠΈΠΌ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ ΡΡΠ΅Π½ΠΈΡ/Π·Π°ΠΏΠΈΡΠΈ (Read-While-Write)
512Β Π±Π°ΠΉΡ EEPROM
ΠΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ 100000 ΡΠΈΠΊΠ»ΠΎΠ² ΡΡΠΈΡΠ°Π½ΠΈΡ/Π·Π°ΠΏΠΈΡΠΈ
1 ΠΠ±Π°ΠΉΡ Π²ΡΡΡΠΎΠ΅Π½Π½ΠΎΠΉ SRAM
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ΅ΠΌΠ°Ρ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠ°, ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡΠ°Ρ Π·Π°ΡΠΈΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΡ
ΡΡΠ΅Π΄ΡΡΠ² ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ
β’ ΠΡΡΡΠΎΠ΅Π½Π½Π°Ρ ΠΏΠ΅ΡΠΈΡΠ΅ΡΠΈΡ
ΠΠ²Π° 8-ΡΠ°Π·ΡΡΠ΄Π½ΡΡ
ΡΠ°ΠΉΠΌΠ΅ΡΠ°/ΡΡΠ΅ΡΡΠΈΠΊΠ° ΡΒ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΌ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΠΌ Π΄Π΅Π»ΠΈΡΠ΅Π»Π΅ΠΌ, ΠΎΠ΄ΠΈΠ½ ΡΒ ΡΠ΅ΠΆΠΈΠΌΠΎΠΌ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ
ΠΠ΄ΠΈΠ½ 16-ΡΠ°Π·ΡΡΠ΄Π½ΡΠΉ ΡΠ°ΠΉΠΌΠ΅Ρ/ΡΡΠ΅ΡΡΠΈΠΊ ΡΒ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΌ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΠΌ Π΄Π΅Π»ΠΈΡΠ΅Π»Π΅ΠΌ ΠΈΒ ΡΠ΅ΠΆΠΈΠΌΠ°ΠΌΠΈ Π·Π°Ρ
Π²Π°ΡΠ° ΠΈΒ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ
Π‘ΡΠ΅ΡΡΠΈΠΊ ΡΠ΅Π°Π»ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΡΒ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΌ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΠΎΠΌ
Π’ΡΠΈ ΠΊΠ°Π½Π°Π»Π° PWM
8-ΠΊΠ°Π½Π°Π»ΡΠ½ΡΠΉ Π°Π½Π°Π»ΠΎΠ³ΠΎ-ΡΠΈΡΡΠΎΠ²ΠΎΠΉ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°ΡΠ΅Π»Ρ (Π²Β ΠΊΠΎΡΠΏΡΡΠ°Ρ
TQFP ΠΈΒ MLF)
6 ΠΊΠ°Π½Π°Π»ΠΎΠ² ΡΒ 10-ΡΠ°Π·ΡΡΠ΄Π½ΠΎΠΉ ΡΠΎΡΠ½ΠΎΡΡΡΡ
2 ΠΊΠ°Π½Π°Π»Π° ΡΒ 8-ΡΠ°Π·ΡΡΠ΄Π½ΠΎΠΉ ΡΠΎΡΠ½ΠΎΡΡΡΡ
6-ΠΊΠ°Π½Π°Π»ΡΠ½ΡΠΉ Π°Π½Π°Π»ΠΎΠ³ΠΎ-ΡΠΈΡΡΠΎΠ²ΠΎΠΉ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°ΡΠ΅Π»Ρ (Π²Β ΠΊΠΎΡΠΏΡΡΠ΅ PDIP)
4 ΠΊΠ°Π½Π°Π»Π° ΡΒ 10-ΡΠ°Π·ΡΡΠ΄Π½ΠΎΠΉ ΡΠΎΡΠ½ΠΎΡΡΡΡ
2 ΠΊΠ°Π½Π°Π»Π° ΡΒ 8-ΡΠ°Π·ΡΡΠ΄Π½ΠΎΠΉ ΡΠΎΡΠ½ΠΎΡΡΡΡ
ΠΠ°ΠΉΡ-ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ 2-ΠΏΡΠΎΠ²ΠΎΠ΄Π½ΡΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΡΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ΅ΠΌΡΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΡΠΉ USART
ΠΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΡΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ SPI (Π²Π΅Π΄ΡΡΠΈΠΉ/Π²Π΅Π΄ΠΎΠΌΡΠΉ)
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ΅ΠΌΡΠΉ ΡΡΠΎΡΠΎΠΆΠ΅Π²ΠΎΠΉ ΡΠ°ΠΉΠΌΠ΅Ρ ΡΒ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΌ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠΌ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΠΎΠΌ
ΠΡΡΡΠΎΠ΅Π½Π½ΡΠΉ Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²ΡΠΉ ΠΊΠΎΠΌΠΏΠ°ΡΠ°ΡΠΎΡ
β’ Π‘ΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ
Π‘Π±ΡΠΎΡ ΠΏΠΎΒ ΠΏΠΎΠ΄Π°ΡΠ΅ ΠΏΠΈΡΠ°Π½ΠΈΡ ΠΈΒ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ΅ΠΌΡΠΉ Π΄Π΅ΡΠ΅ΠΊΡΠΎΡ ΠΊΡΠ°ΡΠΊΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ ΡΠ½ΠΈΠΆΠ΅Π½ΠΈΡ Π½Π°ΠΏΡΡΠΆΠ΅Π½ΠΈΡ ΠΏΠΈΡΠ°Π½ΠΈΡ
ΠΡΡΡΠΎΠ΅Π½Π½ΡΠΉ ΠΊΠ°Π»ΠΈΠ±ΡΠΎΠ²Π°Π½Π½ΡΠΉ RC-Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡ
ΠΠ½ΡΡΡΠ΅Π½Π½ΠΈΠ΅ ΠΈΒ Π²Π½Π΅ΡΠ½ΠΈΠ΅ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΈ ΠΏΡΠ΅ΡΡΠ²Π°Π½ΠΈΠΉ
ΠΡΡΡ ΡΠ΅ΠΆΠΈΠΌΠΎΠ² ΠΏΠΎΠ½ΠΈΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΡ: Idle, Power-save, Power-down, Standby ΠΈΒ ΡΠ½ΠΈΠΆΠ΅Π½ΠΈΡ ΡΡΠΌΠΎΠ² ADC
β’ ΠΡΠ²ΠΎΠ΄Ρ I/O ΠΈΒ ΠΊΠΎΡΠΏΡΡΠ°
23 ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ΅ΠΌΡΠ΅ Π»ΠΈΠ½ΠΈΠΈ Π²Π²ΠΎΠ΄Π°/Π²ΡΠ²ΠΎΠ΄Π°
28-Π²ΡΠ²ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΡΠΏΡΡ PDIP, 32-Π²ΡΠ²ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΡΠΏΡΡ TQFP ΠΈΒ 32-Π²ΡΠ²ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΡΠΏΡΡ MLF
β’ Π Π°Π±ΠΎΡΠΈΠ΅ Π½Π°ΠΏΡΡΠΆΠ΅Π½ΠΈΡ
2,7Β β 5,5 ΠΒ (ATmega8L)
4,5Β β 5,5 ΠΒ (ATmega8)
β’ Π Π°Π±ΠΎΡΠ°Ρ ΡΠ°ΡΡΠΎΡΠ°
0Β β 8 ΠΠΡ (ATmega8L)
0Β β 16 ΠΠΡ (ATmega8)
ΠΎΡΠ»ΠΈΡΠΈΡ ATMEGA16 ΠΎΡΒ 8
β’ 16 ΠΠ±Π°ΠΉΡ Π²Π½ΡΡΡΠΈΡΠΈΡΡΠ΅ΠΌΠ½ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ΅ΠΌΠΎΠΉ Flash ΠΏΠ°ΠΌΡΡΠΈ (In-System Self-Programmable Flash)
β’ ΠΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ JTAG (ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΡΠΉ ΡΒ IEEE 1149.1)
ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΠ΅ΡΠΈΡΠ΅ΡΠΈΠΈ, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ°Ρ ΡΡΠ°Π½Π΄Π°ΡΡΡ JTAG
Π Π°ΡΡΠΈΡΠ΅Π½Π½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π²ΡΡΡΠΎΠ΅Π½Π½ΠΎΠΉ ΠΎΡΠ»Π°Π΄ΠΊΠΈ
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ΅ΡΠ΅Π·Β JTAG ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ: Flash, EEPROM ΠΏΠ°ΠΌΡΡΠΈ, ΠΏΠ΅ΡΠ΅ΠΌΡΡΠ΅ΠΊ ΠΈΒ Π±ΠΈΡΠΎΠ² Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ
β’ Π§Π΅ΡΡΡΠ΅ ΠΊΠ°Π½Π°Π»Π° PWM / Π¨ΠΠ
β’ 8-ΠΊΠ°Π½Π°Π»ΡΠ½ΡΠΉ 10-ΡΠ°Π·ΡΡΠ΄Π½ΡΠΉ Π°Π½Π°Π»ΠΎΠ³ΠΎ-ΡΠΈΡΡΠΎΠ²ΠΎΠΉ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°ΡΠ΅Π»Ρ
8 Π½Π΅ΡΠΈΠΌΠΌΠ΅ΡΡΠΈΡΠ½ΡΡ
ΠΊΠ°Π½Π°Π»ΠΎΠ²
7 Π΄ΠΈΡΡΠ΅ΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΡ
ΠΊΠ°Π½Π°Π»ΠΎΠ² (ΡΠΎΠ»ΡΠΊΠΎ Π²Β ΠΊΠΎΡΠΏΡΡΠ΅ TQFP)
2 Π΄ΠΈΡΡΠ΅ΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΡ
ΠΊΠ°Π½Π°Π»Π° ΡΒ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ΅ΠΌΡΠΌ ΡΡΠΈΠ»Π΅Π½ΠΈΠ΅ΠΌ Π²Β 1, 10 ΠΈΠ»ΠΈΒ 200 ΠΊΡΠ°Ρ (ΡΠΎΠ»ΡΠΊΠΎ Π²Β ΠΊΠΎΡΠΏΡΡΠ΅ TQFP)
β’ Π¨Π΅ΡΡΡ ΡΠ΅ΠΆΠΈΠΌΠΎΠ² ΠΏΠΎΠ½ΠΈΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΡ: Idle, Power-save, Power-down, Standby, Extended Standby ΠΈΒ ΡΠ½ΠΈΠΆΠ΅Π½ΠΈΡ ΡΡΠΌΠΎΠ² ADC
β’ 32 ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ΅ΠΌΡΠ΅ Π»ΠΈΠ½ΠΈΠΈ Π²Π²ΠΎΠ΄Π°/Π²ΡΠ²ΠΎΠ΄Π°
β’ 40-Π²ΡΠ²ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΡΠΏΡΡ PDIP ΠΈΒ 44-Π²ΡΠ²ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΡΠΏΡΡ TQFP
ΠΡΠ»ΠΈ ΠΡ ΡΠΎΠ»ΡΠΊΠΎ Π½Π°ΡΠΈΠ½Π°Π΅ΡΠ΅, ΡΠΎΒ Π½ΡΠΆΠ½ΠΎ ΡΠΊΠ°ΡΠ°ΡΡ ΠΈΒ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ AtmelStudio ΡΒ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΡ atmel.comΠΠΎΡΠ»Π΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ AtmelStudio ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΈΡΡΡΠΏΠΈΡΡ ΠΊΒ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°.
ΠΡΠΎΠ΅ΠΊΡ β ΡΡΠΎ Π²Π°ΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°, ΠΊΠΎΡΠΎΡΡΡ Π²Ρ Π±ΡΠ΄Π΅ΡΠ΅ ΠΏΠΈΡΠ°ΡΡ, ΠΎΡΠ»Π°ΠΆΠΈΠ²Π°ΡΡ ΠΈΒ ΠΏΡΠΎΡΠΈΠ²Π°ΡΡ, ΠΏΠΎΡΠ»Π΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ, Π²Β ΠΏΠ°ΠΌΡΡΡ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ°.
Π§ΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°ΡΡ ΠΏΡΠΎΠ΅ΠΊΡ, Π½Π°Π΄ΠΎΒ ΠΎΡΠΊΡΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΏΠΎΡΠ²ΠΈΡΡΡΡ ΡΠ°ΠΊΠ°Ρ Π·Π°ΡΡΠ°Π²ΠΊΠ°,
ΠΈΒ ΠΎΡΠΊΡΠΎΠ΅ΡΡΡ ΡΡΡΠ°Π½ΠΈΡΠ° ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°
Π§ΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ, Π½ΡΠΆΠ½ΠΎ ΠΊΠ»ΠΈΠΊΠ½ΡΡΡ ΠΏΠΎΒ Β«New Projectβ¦Β»
ΠΒ ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΎΡΠΊΡΠΎΠ΅ΡΡΡ Π½ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ, Π³Π΄Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠ±ΡΠ°ΡΡ ΡΠ·ΡΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠ°, Π΅Π³ΠΎ ΠΌΠ΅ΡΡΠΎΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΏΠ°ΠΊΠ΅ΡΠ° ΡΒ ΡΠ°ΠΉΠ»Π°ΠΌΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΈΒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° Π΄Π»ΡΒ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π²Β Π΄ΡΡΠ³ΠΈΡ
ΠΏΠ΅ΡΠ΅ΠΊΡΠ΅ΡΡΠ½ΡΡ
ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ
. Π§ΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°ΡΡ ΠΏΡΠΎΠ΅ΠΊΡ, Π³Π΄Π΅ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°ΡΡ Π²Β Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ΅, Π½ΡΠΆΠ½ΠΎ Π²ΡΠ±ΡΠ°ΡΡΒ β Assembler, ΠΏΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ ΠΏΠΎΠΌΠ΅Π½ΡΠ΅ΠΌ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠ°, Π΅Π³ΠΎ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΈΒ Π²ΡΠ±ΠΈΡΠ°Π΅ΠΌ ΠΠ.
ΠΠΎΡΠ²ΠΈΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅ ΠΎΠΊΠ½ΠΎ
ΠΡΠ±ΠΈΡΠ°Π΅ΠΌ βmegaAVR, 8-bitβ ΠΈΒ Π½Π°Ρ
ΠΎΠ΄ΠΈΠΌ Π½ΡΠΆΠ½ΡΠΉ Π½Π°ΠΌ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ, ΠΌΡ Π²ΡΠ±ΡΠ°Π»ΠΈ ATmega8. ΠΒ ΠΏΡΠ°Π²ΠΎΠΉ ΡΠ°ΡΡΠΈ Π·Π°ΡΡΠ°Π²ΠΊΠΈ ΠΏΠΎΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΏΠΈΡΠΎΠΊ ΡΡΡΡΠΎΠΉΡΡΠ², ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΡ
ΡΒ ΡΡΠΈΠΌ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠΎΠΌ, ΠΎΠ΄ΠΈΠ½ ΠΈΠ·Β ΠΊΠΎΡΠΎΡΡΡ
ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ. ΠΡΠ±ΠΈΡΠ°Π΅ΠΌ ΠΠ.
ΠΠΎΡΠ²Π»ΡΠ΅ΡΡΡ ΡΡΡΠ°Π½ΠΈΡΠ° ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ° ΡΠ΅ΠΊΡΡΠ°, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈΒ ΠΎΡΠ»Π°ΠΆΠΈΠ²Π°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. ΠΠΎΠΊΠ° ΡΡΡΠ°Π½ΠΈΡΠ° ΡΠΈΡΡΠ°Ρ, ΡΠΊΠ°Π·Π°Π½ΠΎ Π²ΡΠ΅ΠΌΡ ΠΈΒ Π΄Π°ΡΠ° ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΈΒ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»Π° ΠΏΡΠΎΠ΅ΠΊΡΠ°, ΠΈΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. ΠΡΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΎΠΊΠ½ΠΎ ΡΡΡΡΠΎΠΉΡΡΠ² Π²Π²ΠΎΠ΄Π°-Π²ΡΠ²ΠΎΠ΄Π°, ΠΎΠΊΠ½ΠΎ ΠΎΡΡΠ΅ΡΠΎΠ² ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. Π’Π΅ΠΏΠ΅ΡΡ ΠΌΡ
ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°ΡΡ Π²Β Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ΅.
ΠΠ½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ ΠΏΡΠΎΠ΅ΠΊΡ Π΄Π»ΡΒ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½Π°Β ΡΠ·ΡΠΊΠ΅ Π‘Π.
ΠΡΠ±ΠΈΡΠ°Π΅ΠΌ ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²ΠΎ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠΎΠ² βmegaAVR, 8-bitβ
ΠΠ°Π»Π΅Π΅, Π½Π°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ° ΠΈΒ Π²ΡΠ±ΠΈΡΠ°Π΅ΠΌ ΠΠ.
ΠΠΎΡΠ²Π»ΡΠ΅ΡΡΡ ΡΡΡΠ°Π½ΠΈΡΠ° ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ° ΡΠ΅ΠΊΡΡΠ°. ΠΠ΄Π΅ΡΡ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°ΡΡ Π²Β Π‘Π.
Π£Β Π½Π°Ρ Π΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π·Π°Π³ΡΡΠ·ΠΈΡΡ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠ°ΡΠΈΠΎΠ½Π½ΡΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΡ Π΄Π»ΡΒ ΡΠ°Π±ΠΎΡΡ ΡΒ ΠΏΠ»Π°ΡΠ°ΠΌΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ, Π²ΡΠΏΡΡΠΊΠ°Π΅ΠΌΡΠΌΠΈ ΠΊΠΎΡΠΏΠΎΡΠ°ΡΠΈΠ΅ΠΉ ATMEL.
ΠΠ»ΡΒ ΡΡΠΎΠ³ΠΎ Π½ΡΠΆΠ½ΠΎ ΠΏΡΠΈΒ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π²ΡΠ±ΡΠ°ΡΡ ΠΏΡΠ½ΠΊΡ βNew Examle Project from ASFβ¦β
ΠΡΠΊΡΠΎΠ΅ΡΡΡ ΠΎΠΊΠ½ΠΎ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π³ΠΎ Π²ΠΈΠ΄Π°:
ΠΠ΄Π΅ΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΡΠ±ΡΠ°ΡΡ Π½ΡΠΆΠ½ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ, ΠΈΒ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠ°ΠΊΒ Π²Π°ΠΌ Ρ
ΠΎΡΠ΅ΡΡΡβ¦
Π’ΡΠ΅ΡΠΈΠΉ ΠΏΡΠ½ΠΊΡ Π½Π°Β ΡΡΡΠ°Π½ΠΈΡΠΊΠ΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π±ΡΡΡΡΠΎ ΠΎΡΠΊΡΡΠ²Π°ΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ Π·Π°Π³ΡΡΠΆΠ΅Π½Π½ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ.
Π’Π°ΠΊΒ ΠΆΠ΅ Π΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠΏΡΠ°Π²Π»ΡΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ, Π΄Π»ΡΒ ΡΡΠΎΠ³ΠΎ Π½ΡΠΆΠ½ΠΎ Π²ΡΠ±ΡΠ°ΡΡ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΏΠΎΠ΄Β ΠΏΡΠ½ΠΊΡΠΎΠΌ βRecent Projectsβ ΠΈΒ ΠΊΠ»ΠΈΠΊΠ½ΡΡΡ ΠΏΠΎΒ ΠΏΡΠ°Π²ΠΎΠΉ ΠΊΠ»Π°Π²ΠΈΡΠ΅ ΠΌΡΡΠΈ. ΠΠΎΡΠ²ΠΈΡΡΡ ΠΌΠ΅Π½Ρ ΠΈΠ·Β 3-Ρ
ΠΏΡΠ½ΠΊΡΠΎΠ²:
Open Project β Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ ΠΏΡΠΎΠ΅ΠΊΡ.
Open Containing Folder β ΠΏΡΠΎΡΠΌΠΎΡΠΎΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ ΠΏΠ°ΠΏΠΊΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ°
Remove From List β ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΈΠ·Β ΡΠΏΠΈΡΠΊΠ° ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ². Π‘Π°ΠΌ ΠΏΡΠΎΠ΅ΠΊΡ Π½Π΅Β ΡΠ΄Π°Π»ΡΠ΅ΡΡΡ, ΠΈΒ ΠΏΠΎΠΏΡΡΠΊΠ° ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ ΡΒ ΡΠ°ΠΊΠΈΠΌΒ ΠΆΠ΅ ΠΈΠΌΠ΅Π½Π΅ΠΌ Π²ΡΠ΄Π°ΡΡ ΠΎΡΠΈΠ±ΠΊΡ. ΠΠΎΠ»Π½ΠΎΡΡΡΡ ΡΠ΄Π°Π»ΠΈΡΡ ΠΏΡΠΎΠ΅ΠΊΡ ΠΌΠΎΠΆΠ½ΠΎ Π²Β ΠΏΠ°ΠΏΠΊΠ΅, Π³Π΄Π΅ ΠΎΠ½ Π±ΡΠ» ΡΠΎΠ·Π΄Π°Π½.
ΠΠ°ΠΊΒ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Π½ΠΎΠ²ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ ΠΈΒ ΠΏΡΠΎΒ ΠΏΠ΅ΡΠ΅Π½ΠΎΡ ΡΡΠ°ΡΡΡ
ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ², ΡΠΎΠ·Π΄Π°Π½Π½ΡΡ
Π²Β AVR Studio 4, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π½Π°Β Π²ΠΈΠ΄Π΅ΠΎΡΠΎΠ»ΠΈΠΊΠ΅ ΠΎΡΒ ΠΠ»Π΅ΠΊΡΠ°Π½Π΄ΡΠ° ΠΠΈΡΠ°Π½ΡΠ°
ΠΠ°ΠΌΡΠ°Π΄, ΡΠΌΠΎΡΡΠΈ ΠΏΠΎΠ»Π΅Π·Π½ΡΡ ΠΈ!
Π Π°Π΄ΠΈΠΊ (galrad)
Π Π€. Π Π΅ΡΠΏΡΠ±Π»ΠΈΠΊΠ° ΠΠ°ΡΠΊΠΎΡΡΠΎΡΡΠ°Π½. Π³.Π£ΡΠ°
1964Π³.Ρ. ΠΡΠ°Ρ. Π£ΡΠ΅Π½Π°Ρ ΡΡΠ΅ΠΏΠ΅Π½Ρ — ΠΊΠ°Π½Π΄ΠΈΠ΄Π°Ρ ΠΌΠ΅Π΄ΠΈΡΠΈΠ½ΡΠΊΠΈΡ Π½Π°ΡΠΊ. ΠΡΠΎΡΠΎΠ΅ Π²ΡΡΡΠ΅Π΅ ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ — ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ-ΡΠ»Π΅ΠΊΡΡΠΎΠ½ΠΈΠΊ.
Β
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΠ AVR Π½Π° ΡΠ·ΡΠΊΠ΅ assembler Π² ΡΡΠ΅Π΄Π΅ Linux / Habr
ΠΠΈ Π΄Π»Ρ ΠΊΠΎΠ³ΠΎ Π½Π΅ ΡΠ΅ΠΊΡΠ΅Ρ, ΡΡΠΎ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²Π° AVR ΠΏΡΠΎΡΠ½ΠΎ Π²ΠΎΡΠ»ΠΈ Π² ΠΏΡΠ°ΠΊΡΠΈΠΊΡ Π΄ΠΎΠΌΠ°ΡΠ½ΠΈΡ ΠΏΠΎΠ΄Π΅Π»ΠΎΠΊ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΡΠΆΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π»Π΅Ρ Π½Π°Π±Π»ΡΠ΄Π°Π΅ΡΡΡ ΠΌΠ°ΡΡΠΎΠ²ΠΎΠ΅ (
Π Π°Π½ΠΎ ΠΈΠ»ΠΈ ΠΏΠΎΠ·Π΄Π½ΠΎ Π΄Π»Ρ Π»ΡΠ±ΠΎΠ³ΠΎ Β«Π°ΡΠ΄ΡΠΈΠ½ΡΡΠΈΠΊΠ°Β» (ΠΏΡΠΈ ΡΡΠ»ΠΎΠ²ΠΈΠΈ ΡΡΠΎ ΠΎΠ½ Ρ ΠΎΡΠ΅Ρ Π²ΡΠΉΡΠΈ Π½Π° Π±ΠΎΠ»Π΅Π΅ Π²ΡΡΠΎΠΊΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠΉ ΡΡΠΎΠ²Π΅Π½Ρ) Π½Π°ΡΡΡΠΏΠ°Π΅Ρ ΠΌΠΎΠΌΠ΅Π½Ρ ΠΊΠΎΠ³Π΄Π° Π² ΡΠ°ΠΌΠΊΠ°Ρ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ Arduino Π΅ΠΌΡ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ ΡΠ΅ΡΠ½ΠΎ ΠΈ ΠΎΠ½ Π½Π°ΡΠΈΠ½Π°Π΅Ρ Π·Π°Π΄ΡΠΌΡΠ²Π°ΡΡΡΡ ΠΎ ΡΠΎΠΌ Π° ΡΡΠΎ ΠΆΠ΅ Π² Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΠΏΠΎΠ΄ ΠΊΠ°ΠΏΠΎΡΠΎΠΌ. Π ΠΎΡΠ²Π΅ΡΡ Π½Π° Π²ΡΠ΅ Π΅Π³ΠΎ Π²ΠΎΠΏΡΠΎΡΡ ΡΠΆΠ΅ Π΅ΡΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π² Π²ΠΈΠ΄Π΅ Π·Π°ΠΌΠ΅ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΊΡΡΡΠ° Β«AVR. Π£ΡΠ΅Π±Π½ΡΠΉ ΠΊΡΡΡΒ» ΠΎΡ Π³Π»ΡΠ±ΠΎΠΊΠΎΡΠ²Π°ΠΆΠ°Π΅ΠΌΠΎΠ³ΠΎ DIHALT. ΠΡΠ»ΠΈ Π²Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ OS Windows, ΡΠΎ ΠΈ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠ° Π² ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Ρ Π²Π°Ρ Π½Π΅ Π±ΡΠ΄Π΅Ρ, Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΠΎΠΉ Atmel Studio, Π·Π°ΠΊΡΡΠ²Π°ΡΡΠ΅ΠΉ Π²ΡΠ΅ Π²ΠΎΠΏΡΠΎΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΠ Π΄Π»Ρ ΠΠ AVR.
Π₯ΠΎΡΡ Ρ ΠΈ ΡΠΈΠΌΠ»ΠΈΠ΄ Π² ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΠ²Π΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΠ ΠΏΡΠΈΠΊΠ»Π°Π΄Π½ΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ, Π²ΠΎΠΏΡΠΎΡΡ Β«ΠΆΠ΅Π»Π΅Π·Π°Β» ΠΊΠΎΡΠΎΡΠΎΠ΅ Π² Π½Π°ΡΠ΅ΠΉ ΠΊΠΎΠ½ΡΠΎΡΠ΅ Π΄Π΅Π»Π°Π΅ΡΡΡ Π½Π° Π±Π°Π·Π΅ AVR Ρ Π½Π΅Π΄Π°Π²Π½ΠΈΡ
ΠΏΠΎΡ ΡΡΠ°Π»ΠΈ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠΎΠ²Π°ΡΡ ΠΌΠ΅Π½Ρ ΠΎΡΠ΅Π½Ρ ΠΎΡΡΡΠΎ. ΠΠΎΠ·Π½ΠΈΠΊΠ»ΠΎ ΠΆΠ΅Π»Π°Π½ΠΈΠ΅ Ρ
ΠΎΡΠΎΡΠΎ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ Π²ΠΎ Π²ΡΠ΅Ρ
Π°ΡΠΏΠ΅ΠΊΡΠ°Ρ
ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΠ Π΄Π»Ρ ΠΠ. Π ΡΠ°ΠΊ ΠΊΠ°ΠΊ Ρ ΡΠ²Π»ΡΡΡΡ ΡΠ±Π΅ΠΆΠ΄Π΅Π½Π½ΡΠΌ ΠΏΡΠΈΠ²Π΅ΡΠΆΠ΅Π½ΡΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π² ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ OS Π½Π° Π±Π°Π·Π΅ ΡΠ΄ΡΠ° Linux, ΠΌΠ΅Π½Ρ Π·Π°ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠΎΠ²Π°Π» Π²ΠΎΠΏΡΠΎΡ, Π° ΠΊΠ°ΠΊ ΡΠ°ΠΌ Π² Π»ΠΈΠ½ΡΠΊΡΠ°Ρ
: ΠΌΠΎΠΆΠ½ΠΎ/Π½Π΅Π»ΡΠ·Ρ Π»ΠΈ ΠΏΠΈΡΠ°ΡΡ ΠΈ ΠΎΡΠ»Π°ΠΆΠΈΠ²Π°ΡΡ ΠΠ, Π·Π°ΡΠΈΠ²Π°ΡΡ Π΅Π³ΠΎ Π² ΠΊΡΠΈΡΡΠ°Π»Π» Ρ ΡΠ΅ΠΌ ΠΆΠ΅ (ΠΈΠ»ΠΈ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΡΠ΅ΠΌ ΠΆΠ΅) ΡΡΠΎΠ²Π½Π΅ΠΌ ΡΠ΄ΠΎΠ±ΡΡΠ²Π°, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°ΠΌ Π΄ΠΎΡΡΡΠΏΠ΅Π½ Π² Windows. Π’Π΅Ρ
ΠΊΠΎΠ³ΠΎ ΡΠΎΠΆΠ΅ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΡΠ΅Ρ ΡΡΠΎΡ Π²ΠΎΠΏΡΠΎΡ, ΠΈ Π² ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ ΡΠ΅Ρ
, ΠΊΠΎΠΌΡ ΡΠ΅ΠΌΠ° ΠΏΠΎΡΡΠ° ΠΊΠ°ΠΆΠ΅ΡΡΡ Π½Π°Π΄ΡΠΌΠ°Π½Π½ΠΎΠΉ, ΠΏΡΠΈΠ³Π»Π°ΡΠ°Ρ ΠΏΠΎΠ΄ ΠΊΠ°Ρ.
Π§ΡΠΎ ΠΊΠ°ΡΠ°Π΅ΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π½Π° C/C++, Π² ΡΡΠ΅Π΄Π΅ Π»ΠΈΠ½ΡΠΊΡ Ρ ΡΡΠΈΠΌ ΠΎΡΠΎΠ±ΡΡ
ΠΏΡΠΎΠ±Π»Π΅ΠΌ ΠΈ Π½Π΅Ρ, Π² Π²ΠΈΠ΄Ρ ΠΎΠ±ΡΠ΅ΠΉ ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΡΡΠΈ ΡΡΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ Π½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΡΠ·ΡΠΊΠ° ΠΈ Π½Π°Π»ΠΈΡΠΈΡ Π΄ΠΎΡΡΠΎΠΉΠ½ΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡΠ° ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ. ΠΠ΄Π½Π°ΠΊΠΎ, ΡΠΎΡ ΠΆΠ΅ DIHALT, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΠ²Π΅ΡΠΆΠ΄Π°Π΅Ρ ΡΡΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π»Ρ ΠΠ Π½Π΅ΠΎΡΠ΄Π΅Π»ΠΈΠΌΠΎ ΠΎΡ Π·Π½Π°Π½ΠΈΡ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ°, Π² ΡΠ΅ΠΌ Ρ Ρ Π½ΠΈΠΌ ΡΠΎΠ³Π»Π°ΡΡΡΡ, Π² Π²ΠΈΠ΄Ρ Π»ΠΎΠ³ΠΈΡΠ½ΠΎΡΡΠΈ Π΅Π³ΠΎ ΡΠ΅Π·ΠΈΡΠΎΠ², ΠΈΠ·Π»ΠΎΠΆΠ΅Π½Π½ΡΡ
Π² Β«Π£ΡΠ΅Π±Π½ΠΎΠΌ ΠΊΡΡΡΠ΅Β» ΠΈ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ (ΠΏΡΡΡΡ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ) ΠΎΠΏΡΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΠΎΠ΄ x86.
Π ΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΡΡΡΡ ΡΠ΅Π·ΠΈΡΠΎΠΌ, ΡΡΠΎ ΠΎΡ Π°ΡΠΌΠ° AVR Π½Π°ΠΌ Π½ΠΈΠΊΡΠ΄Π° Π½Π΅ ΡΠΉΡΠΈ ΠΈ ΡΠΈΠ΄ΠΈΠΌ ΠΌΡ ΠΏΠΎΠ΄ Π»ΠΈΠ½ΡΠΊΡΠΎΠΌ, ΠΏΠΎΠΏΡΠΎΠ±ΡΠ΅ΠΌ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π½Π° ΡΠΎ, ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΈΡΠ°ΡΡ ΠΈ ΠΎΡΠ»Π°ΠΆΠΈΠ²Π°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. Π― ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ² Arch Linux, ΠΏΠΎΡΡΠΎΠΌΡ Π² ΡΠ²ΠΎΠ΅ΠΌ ΠΏΠΎΠ²Π΅ΡΡΠ²ΠΎΠ²Π°Π½ΠΈΠΈ Π±ΡΠ΄Ρ ΠΎΠΏΠΈΡΠ°ΡΡΡΡ Π½Π° Π΅Π³ΠΎ ΡΠΊΠΎΡΠΈΡΡΠ΅ΠΌΡ.
Π‘ΡΠ°Π·Ρ ΡΠΊΠ°ΠΆΡ, ΡΡΠΎ ΡΠ²ΡΠ·ΠΊΡ Atmel Studio + wine Ρ ΠΏΡΠ΅Π΄Π»Π°Π³Π°ΡΡ Π½Π΅ Π±ΡΠ΄Ρ. ΠΠ΅ Π»ΡΠ±Π»Ρ Ρ wine (Ρ ΠΎΡΡ ΠΈ ΠΏΠΎΠ»ΡΠ·ΡΡΡΡ ΠΏΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ). ΠΡΡΠ°Π½ΠΎΠ²ΠΈΠΌΡΡ Π½Π° Π½Π°ΡΠΈΠ²Π½ΡΡ ΡΡΠ΅Π΄ΡΡΠ²Π°Ρ , ΠΏΡΠ΅ΠΆΠ΄Π΅ Π²ΡΠ΅Π³ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠΎΠ², ΠΎΠ±Π·ΠΎΡ ΠΊΠΎΡΠΎΡΡΡ Π² ΡΠ΅ΡΠΈ ΠΈ Π»ΠΈΡΠ½ΡΠ΅ ΠΊΠΎΠ²ΡΡΡΠ»ΠΊΠΈ Π΄Π°Π»ΠΈ Π²ΡΡ ΠΎΠ΄ Π½Π° ΡΡΠΈΡΠΌΠ²ΠΈΡΠ°Ρ gavrasm, avra ΠΈ avr-as. ΠΡΠ±ΠΎΡ ΠΏΡΠΎΠΈΠ·ΠΎΡΠ΅Π» ΠΏΠΎ Π΄Π²ΡΠΌ ΠΏΡΠΎΡΠΈΠ²ΠΎΡΠ΅ΡΠΈΠ²ΡΠΌ ΠΊΡΠΈΡΠ΅ΡΠΈΡΠΌ: ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ° ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅ΠΌΠΎΠ³ΠΎ Atmel ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΎΡΠ»Π°Π΄ΠΊΠΈ ΠΏΡΠΎΡΠΈΠ²ΠΊΠΈ ΠΏΠΎ ΡΠ°Π³Π°ΠΌ Π² ΡΠΌΡΠ»ΡΡΠΎΡΠ΅. ΠΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ Π΄Π»Ρ ΠΌΠ΅Π½Ρ Π±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½ΠΎ, Π° Π² ΠΏΠ»ΠΎΡΠΊΠΎΡΡΠΈ ΠΊΡΡΡΠ° @DIHAL ΡΠ°ΠΊ ΠΏΡΡΠΌ Π²ΠΎΠΎΠ±ΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π΄Π»Ρ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΡ ΠΏΡΠΎΡΠ΅ΡΡΠ° ΡΠ°Π±ΠΎΡΡ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ°. ΠΠ±ΡΠ½ΠΎΡΡΡ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ° Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ°ΠΌΠΈ ΠΎΡ Atmel Π΄Π°Π΅Ρ, ΠΎΠΏΡΡΡ ΡΠ°ΠΊΠΈ Ρ ΠΌΠΎΠ΅ΠΉ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ, Π»ΠΈΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π±Π΅Π· ΡΡΡΠ΄Π° Π°Π΄Π°ΠΏΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΎΠ΅ΠΊΡΡ Atmel Studio ΠΊ ΡΠ°Π±ΠΎΡΠ΅ Π² Π»ΠΈΠ½ΡΠΊΡΠ°Ρ , ΡΡΠΎ Π²Π΅ΡΡΠΌΠ° ΡΠΎΠΌΠ½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²ΠΎ, ΠΈΠ±ΠΎ ΡΠΎΡ ΠΆΠ΅ avr-as ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΠΈ ΠΏΠΎΠ΄ Windows. ΠΡΠ΅Π΄Π»Π°Π³Π°Ρ ΡΠΈΡΠ°ΡΠ΅Π»Ρ ΠΎΠ±Π·ΠΎΡ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Π½ΠΎΠΉ ΡΡΠΎΠΈΡΡ.
gavrasm ΠΈ avra
ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ Atmel. ΠΠ΅ΡΠ²ΡΠΉ Π½Π°ΡΠ΅Π»ΡΡ Π² AUR ΠΈ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ
$ yaourt -S gavrasm
ΠΡΠΎΡΠΎΠΉ ΡΠ°ΠΊ ΠΆΠ΅ Π΄ΠΎΡΡΡΠΏΠ΅Π½ Π² AUR
$ yaourt -S avra
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π²ΠΈΠ΄Π°
test.S
;---- ΠΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΠΌ ΡΠ΅Π»Π΅Π²ΠΎΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ
.device atmega16
;---- Π‘Π΅Π³ΠΌΠ΅Π½Ρ Π΄Π°Π½Π½ΡΡ
.dseg
;---- Π‘Π΅Π³ΠΌΠ΅Π½Ρ ΠΊΠΎΠ΄Π°
.cseg
.org 0x0000
ldi r16, 10
M1:
inc r16
rjmp M1
;---- Π‘Π΅Π³ΠΌΠ΅Π½Ρ EEPROM
.eseg
Π‘ΠΎΠ±ΠΈΡΠ°Π΅ΡΡΡ ΠΎΠ±ΠΎΠΈΠΌΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ°ΠΌΠΈ ΡΡΠ°Π·Ρ Π² *.hex ΠΈ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΡΠ°Π±ΠΎΡΡ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎ. Π§ΡΠΎΠ±Ρ Π½Π΅ Π²ΠΎΠ·ΠΌΡΡΠ°ΡΡ Π±Π»Π°Π³ΠΎΡΠΎΠ΄Π½ΡΡ Π΄ΠΎΠ½ΠΎΠ² Π΄Π»ΠΈΠ½Π½ΡΠΌΠΈ ΠΏΠΎΡΡΡΠ½ΠΊΠ°ΠΌΠΈ, ΠΏΠΎΠΌΠ΅ΡΠ°Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΏΠΎΠ΄ ΡΠΏΠΎΠΉΠ»Π΅ΡΡΠΡΡ Π»ΠΎΠΏ gavrasm
$ gavrasm test.S
+------------------------------------------------------------+
| gavrasm gerd's AVR assembler Version 3.5 (C)2015 by DG4FAC |
+------------------------------------------------------------+
Compiling Source file: test.S
-------
Pass: 1
14 lines done.
Pass 1 ok.
-------
Pass: 2
14 lines done.
3 words code, 0 words constants, total=3 = 0.0%
No warnings!
Compilation completed, no errors. Bye, bye ...
$ ls -l
ΠΈΡΠΎΠ³ΠΎ 12
-rw-rw----+ 1 maisvendoo users 52 ΠΈΡΠ» 29 15:46 test.hex
-rw-rw----+ 1 maisvendoo users 741 ΠΈΡΠ» 29 15:46 test.lst
-rw-rw----+ 1 maisvendoo users 92 ΠΈΡΠ» 29 15:46 test.S
Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ hex-ΡΠ°ΠΉΠ»Π° ΠΏΡΠΎΡΠΈΠ²ΠΊΠΈ:020000020000FC
:060000000AE00395FECFAB
:00000001FF
Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠ°ΠΉΠ»Π° Π»ΠΈΡΡΠΈΠ½Π³Π°
gavrasm Gerd's AVR assembler version 3.5 (C)2015 by DG4FAC
----------------------------------------------------------
Source file: test.S
Hex file: test.hex
Eeprom file: test.eep
Compiled: 29.07.2017, 15:46:38
Pass: 2
1: .device atmega16
2:
3: .dseg
4:
5: .cseg
6: .org 0x0000
7:
8: 000000 E00A ldi r16, 10
9: M1:
10: 000001 9503 inc r16
11: 000002 CFFE rjmp M1
12:
13: .eseg
14:
Program : 3 words.
Constants : 0 words.
Total program memory: 3 words.
Eeprom space : 0 bytes.
Data segment : 0 bytes.
Compilation completed, no errors.
Compilation endet 29.07.2017, 15:46:38
ΠΡΡ Π»ΠΎΠΏ avra
$ avra -l test.lst test.S
AVRA: advanced AVR macro assembler Version 1.3.0 Build 1 (8 May 2010)
Copyright (C) 1998-2010. Check out README file for more info
AVRA is an open source assembler for Atmel AVR microcontroller family
It can be used as a replacement of 'AVRASM32.EXE' the original assembler
shipped with AVR Studio. We do not guarantee full compatibility for avra.
AVRA comes with NO WARRANTY, to the extent permitted by law.
You may redistribute copies of avra under the terms
of the GNU General Public License.
For more information about these matters, see the files named COPYING.
Pass 1...
Pass 2...
done
Used memory blocks:
Code : Start = 0x0000, End = 0x0002, Length = 0x0003
Assembly complete with no errors.
Segment usage:
Code : 3 words (6 bytes)
Data : 0 bytes
EEPROM : 0 bytes
$ ls -l
ΠΈΡΠΎΠ³ΠΎ 16
-rw-rw----+ 1 maisvendoo users 92 ΠΈΡΠ» 29 15:46 test.S
-rw-rw----+ 1 maisvendoo users 0 ΠΈΡΠ» 29 15:55 test.S.cof
-rw-rw----+ 1 maisvendoo users 13 ΠΈΡΠ» 29 15:55 test.S.eep.hex
-rw-rw----+ 1 maisvendoo users 55 ΠΈΡΠ» 29 15:55 test.S.hex
-rw-rw----+ 1 maisvendoo users 61 ΠΈΡΠ» 29 15:55 test.S.obj
Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ hex-ΡΠ°ΠΉΠ»Π°
:020000020000FC
:060000000AE00395FECFAB
:00000001FF
ΠΠΈΡΡΠΈΠ½Π³ Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅ΡΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΌ ΠΊΠ»ΡΡΠ΅ΠΌ -l ΠΏΡΠΈ ΡΠ±ΠΎΡΠΊΠ΅
$ cat test.lstAVRA Ver. 1.3.0 test.S Sat Jul 29 16:02:05 2017
.device atmega16
.dseg
.cseg
.org 0x0000
C:000000 e00a ldi r16, 10
M1:
C:000001 9503 inc r16
C:000002 cffe rjmp M1
.eseg
Segment usage:
Code : 3 words (6 bytes)
Data : 0 bytes
EEPROM : 0 bytes
Assembly completed with no errors.
ΠΠ½Π°Π»ΠΈΠ·ΠΈΡΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ, ΡΡΠΎ:
- ΠΠ΅Π½Π΅ΡΠΈΡΡΠ΅ΡΡΡ ΡΠ°ΠΉΠ» Π² ΡΠΎΡΠΌΠ°ΡΠ΅ Intel HEX, ΠΏΡΠΈΠ³ΠΎΠ΄Π½ΡΠΉ ΡΡΠ°Π·Ρ Π΄Π»Ρ ΠΏΡΠΎΡΠΈΠ²ΠΊΠΈ Π² ΠΠ
- Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌ Ρ Atmel
ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎ Π² ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ avra Π΅ΡΡΡ ΠΎΡΠ»ΠΈΡΠΈΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ
.device atmel16
Π΄Π°Π΅Ρ ΡΠΊΠ°Π·Π°Π½ΠΈΠ΅ Π½Π° ΠΠ, ΡΠΊΡΡΠ²Π°Ρ ΠΎΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ° ΡΠ²Π½ΠΎΠ΅ ΡΠΊΠ°Π·Π°Π½ΠΈΠ΅ ΡΡΡΠ»ΠΎΠΊ Π½Π° *.inc ΡΠ°ΠΉΠ» ΠΌΠ°ΠΊΡΠΎΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠΉ. Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΠΈ ΡΡΠ΄ Π΄ΡΡΠ³ΠΈΡ Π½ΡΠ°Π½ΡΠΎΠ², ΠΎ ΠΊΠΎΡΠΎΡΡΡ ΠΏΡΠΎΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΡ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΈΠ»ΠΈ Π² Ρ ΠΎΡΠΎΡΠ΅ΠΉ ΠΎΠ±Π·ΠΎΡΠ½ΠΎΠΉ ΡΡΠ°ΡΡΠ΅ Valber’Π° Π½Π° ΡΡΡΡΠΊΠΎΠΌ ΡΠ·ΡΠΊΠ΅. ΠΠ± ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΡΡ gavrasm ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΈΡΠ°ΡΡ ΡΡΡ.
ΠΠ±Π° ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½Π½ΡΡ
ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ° ΠΈΠΌΠ΅ΡΡ ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΠΉ ΡΠ°ΡΠ°Π»ΡΠ½ΡΠΉ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΠΊ β ΠΎΠ½ΠΈ Π½Π΅ Π³Π΅Π½Π΅ΡΠΈΡΡΡΡ ΠΎΡΠ»Π°Π΄ΠΎΡΠ½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ. Π₯ΠΎΡΡ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΏΠΎ avra ΡΠ°ΠΊΠ°Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π·Π°ΡΠ²Π»Π΅Π½Π°
Debugging support AVRA creates a coff file everytime the assembly was sucessful. This file allows AVR Studio or any coff compatible debugger to simulate or emulate the program.
Π½ΠΎ *.cof ΡΠ°ΠΉΠ» Π² Π²ΡΡ Π»ΠΎΠΏΠ΅ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π½ΠΎ ΠΎΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΏΡΡΡΡΠΌ. ΠΡΡΡΡΡΡΠ²ΠΈΠ΅ ΠΎΡΠ»Π°Π΄ΠΎΡΠ½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΈΡΠΊΠ»ΡΡΠ°Π΅Ρ Π°Π΄Π΅ΠΊΠ²Π°ΡΠ½ΡΡ ΠΎΡΠ»Π°Π΄ΠΊΡ ΠΏΠΎ ΡΠ°Π³Π°ΠΌ, ΠΎΡΡΡΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΡ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΠΌ. Π’Π°ΠΊ ΡΡΠΎ ΠΎΡ ΡΡΠΈΡ (ΠΊ ΡΠ»ΠΎΠ²Ρ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΡΡΠ°ΡΡΡ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²) ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΠΌ ΠΊ Π΄ΡΡΠ³ΠΎΠΌΡ, Π±ΠΎΠ»Π΅Π΅ ΠΌΠΎΠ³ΡΡΠ΅ΠΌΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΡ ΠΈΠ· ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²Π° GNU
avr-as
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΡΡΠΎΠ³ΠΎ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Π΄ΠΎΡΡΡΠΏΠ½Π° ΠΈΠ· ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π² Π»ΡΠ±ΠΎΠ³ΠΎ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΎΠ³ΠΎ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π°. Π ΡΠ»ΡΡΠ°Π΅ Ρ Arch Linux
$ sudo pacman -S avr-gcc avr-libc avr-binutils
GNU assembler (gas) ΡΠ²Π»ΡΠ΅ΡΡΡ Π±ΡΠΊΡΠ½Π΄ΠΎΠΌ ΠΊ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΡ gcc ΠΈ ΠΎΠ±ΡΡΠ½ΠΎ ΡΠ²Π½ΠΎ Π½Π΅ Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ. Π‘Π²ΡΠ·Π°Π½ΠΎ ΡΡΠΎ Ρ ΠΈΠ΄Π΅ΠΎΠ»ΠΎΠ³ΠΈΠ΅ΠΉ *nix ΡΠΈΡΡΠ΅ΠΌ, ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΡ Π½Π° C/C++, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΡ ΠΎΡΠ²ΠΎΠ΄ΠΈΡΡΡ ΡΠΎΠ»Ρ ΠΌΠ»Π°Π΄ΡΠ΅Π³ΠΎ Π½Π΅Π»ΡΠ±ΠΈΠΌΠΎΠ³ΠΎ ΡΡΠ½Π°. ΠΠΌΠ΅ΡΡΠ΅ Ρ ΡΠ΅ΠΌ ΡΡΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ Π³Π»ΡΠ±ΠΎΠΊΡΡ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π½Π° C/C++ ΡΡΠΎ, ΡΠ΅Π΄ΠΊΠΎ, Π½ΠΎ Π±ΡΠ²Π°Π΅Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ. Π ΡΠΎΠΌΡ ΠΆΠ΅, Π΅ΡΠ»ΠΈ Π³ΠΎΠ²ΠΎΡΠΈΡΡ ΠΎΠ± Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°Ρ x86/x86_64 ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ Β«Π³Π½ΡΡΠΎΠ³ΠΎΒ» Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ° (AT&T) ΡΠ°Π·ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ ΠΎΡ ΠΏΡΠΈΠ½ΡΡΠΎΠΉ Intel-Π½ΠΎΡΠ°ΡΠΈΠΈ (Ρ ΠΎΡΡ Π½Π° gas ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈ ΠΈΠ½ΡΠ΅Π»-ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ, ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ Π΄Π°Π΅Ρ ΡΠ°ΠΊΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ). Π§Π΅Π³ΠΎ ΡΡΠΎΠΈΡ ΠΎΠ±ΡΠ°ΡΠ½ΡΠΉ ΠΏΠΎ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡ ΠΊ ΠΈΠ½ΡΠ΅Π»-Π½ΠΎΡΠ°ΡΠΈΠΈ ΠΏΠΎΡΡΠ΄ΠΎΠΊ ΠΎΠΏΠ΅ΡΠ°Π½Π΄ΠΎΠ² Π² ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ , Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ
ΠΡΠΈΠΌΠ΅Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΊ AVR gas Π½Π΅ ΠΎΡΡ ΠΎΠ΄ΠΈΡ ΠΎΡ Π½ΠΎΡΠ°ΡΠΈΠΈ Atmel Π² ΡΠ°ΡΡΠΈ ΠΎΡΠΎΡΠΌΠ»Π΅Π½ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄ β ΠΏΠΎΡΡΠ΄ΠΎΠΊ ΠΎΠΏΠ΅ΡΠ°Π½Π΄ Π·Π΄Π΅ΡΡ ΠΏΡΠΈΠ²ΡΡΠ½ΡΠΉ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π°:
ldi r16, 10
Π² gas Π΄Π»Ρ AVR Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΠΏΡΠΈΠ²ΡΡΠ½ΠΎ. ΠΡΡΠ³ΠΎΠ΅ Π΄Π΅Π»ΠΎ ΠΌΠ°ΠΊΡΠΎΡΡ ΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ°, ΠΎΠ½ΠΈ ΠΎΡΠ»ΠΈΡΠ°ΡΡΡΡ ΠΎΡ Atmel. ΠΡΠΈΠ²Π΅Π΄Π΅Π½Π½Π°Ρ Π²ΡΡΠ΅ ΡΠ΅ΡΡΠΎΠ²Π°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π±ΡΠ΄Π΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ°ΠΊ:
test.S
#include "/usr/avr/include/avr/io.h"
/* Π‘Π΅ΠΊΡΠΈΡ Π΄Π°Π½Π½ΡΡ
*/
.data
/* Π‘Π΅ΠΊΡΠΈΡ ΠΊΠΎΠ΄Π° */
.section .text
.org 0x0000
/* Π’ΠΎΡΠΊΠ° Π²Ρ
ΠΎΠ΄Π°, ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½Π°Ρ ΠΏΡΠΈ Π²ΡΠ·ΠΎΠ²Π΅ avr-gcc Π²ΠΌΠ΅ΡΡΠΎ avr-as */
.global main
main:
ldi r16, 10
M1:
inc r16
rjmp M1
ΠΠ°ΠΊ Π²ΠΈΠ΄Π½ΠΎ ΠΈΠ· ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊΠ° ΡΠ΅ΠΊΡΠΈΡ ΠΊΠΎΠ΄Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²ΠΎΠΉ ΠΏΡΠ΅Π΄ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° .section .text (Π°Π½Π°Π»ΠΎΠ³ .cseg). ΠΠ½Π°Π»ΠΎΠ³ΠΎΠΌ .dseg ΡΠ»ΡΠΆΠΈΡ .data. ΠΠ΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΠΎΠ΅, ΡΠ΅Π³ΠΎ Ρ ΠΏΠΎΠΊΠ° Π½Π΅ ΠΏΠΎΠ½ΡΠ» ΠΈ Π½Π΅ ΡΠ·ΡΠ΅Π» Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ, ΠΊΠ°ΠΊ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ EEPROM (Π°Π½Π°Π»ΠΎΠ³ .eseg). ΠΠ°Π΄Π΅ΡΡΡ ΡΡΠ΅Π΄ΠΈ ΡΠΈΡΠ°ΡΠ΅Π»Π΅ΠΉ Π½Π°ΠΉΠ΄Π΅ΡΡΡ Π΄ΠΎΠ±ΡΡΠΉ Π³ΡΡΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°ΡΠΎΠ»ΠΊΠ½Π΅Ρ ΠΌΠ΅Π½Ρ Π½Π° ΠΎΡΠ²Π΅Ρ. ΠΠΎΠ²ΠΈΡΠΊΠ°ΠΌ ΠΆΠ΅, ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠΌ ΠΌΠ½Π΅, ΡΠΎΠ²Π΅ΡΡΡ ΠΏΠΎΠΊΡΡΠΈΡΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΡΡΡ ΠΈ Π²ΠΎΡ Π·Π΄Π΅ΡΡ Π΄Π»Ρ ΡΡΡΠ½Π΅Π½ΠΈΡ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ gas Π΄Π»Ρ AVR.
ΠΡ ΠΆΠ΅ ΡΠ΅ΠΏΠ΅ΡΡ ΡΠΎΠ±Π΅ΡΠ΅ΠΌ hex-ΡΠ°ΠΉΠ», ΠΏΡΠΈΠ³ΠΎΠ΄Π½ΡΠΉ Π΄Π»Ρ ΠΏΡΠΎΡΠΈΠ²ΠΊΠΈ ΠΠ. ΠΠΎΠΌΠ°Π½Π΄Π°:
$ avr-as -mmcu=atmega16 -o test.o test.S
Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΡΠΉ ΡΠ°ΠΉΠ» Π΄Π»Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ° (Π² Π½Π°ΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅ ATMega 16). ΠΠ°Π»Π΅Π΅ Π΄Π°Π½Π½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΡΠΉ ΡΠ°ΠΉΠ» ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ΅ΡΡΡ Π² hex
$ avr-objcopy -O ihex test.o test.hex
ΠΠΎΠ»ΡΡΠ°Ρ Π½Π° Π²ΡΡ ΠΎΠ΄Π΅ hex-ΡΠ°ΠΉΠ» Π²ΠΈΠ΄Π°
test.hex:060000000AE00395FECFAB
:00000001FF
Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ΠΌΡ Π½Π΅ ΠΎΡΠ²Π΅ΡΠΈΠ»ΠΈ Π½Π° Π³Π»Π°Π²Π½ΡΠΉ Π²ΠΎΠΏΡΠΎΡ ΠΈ Π½Π΅ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠΈΠ»ΠΈ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²ΠΎ gas ΠΏΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ ΠΏΠΎΡΠ°Π³ΠΎΠ²ΠΎΠΉ ΠΎΡΠ»Π°Π΄ΠΊΠΈ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΏΡΠ΅ΠΆΠ΄Π΅ Π²ΡΠ΅Π³ΠΎ
Π Π»ΠΈΠ½ΡΠΊΡΠ°Ρ Π½Π΅Ρ Π΄ΠΎΡΡΠΎΠΉΠ½ΠΎΠΉ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Ρ GDB. ΠΠ»Ρ Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΊ ΠΠ AVR ΡΡΠ°Π²ΠΈΠΌ ΡΡΠΎΠ½ΡΡΠ½Π΄
$ sudo pacman -S avr-gdb
ΠΠ°Π½Π½ΡΠΉ ΠΎΡΠ»Π°Π΄ΡΠΈΠΊ ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ Π²ΡΠ΅ΠΌ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠΎΠΌ ΠΏΡΠΎΡΠΈΠ²ΠΎΡΠ΅ΡΠΈΠΉ, ΠΏΡΠ³Π°ΡΡΠΈΡ Π½ΠΎΠ²ΠΈΡΠΊΠΎΠ²: ΠΏΡΠΈ ΡΠΏΡΠ°Π²Π΅Π΄Π»ΠΈΠ²ΠΎ Π·Π°ΡΠ²Π»Π΅Π½Π½ΠΎΠΉ ΡΠ΅ΡΠΌΠΎΡΠ΄Π΅ΡΠ½ΠΎΠΉ ΠΌΠΎΡΠΈ ΠΏΠΎΡΠΎΠ³ Π²Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ Π΅Π³ΠΎ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ Π²ΡΡΠΎΠΊ. Π§ΡΠΎΠ±Ρ ΡΠ°Π·ΡΡΠΈΡΡΡΡ Π±ΠΎΡΡΡΡ gdb ΠΈ Π½Π°ΡΠ°ΡΡ Π² Π½Π΅ΠΌ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΎΡΠ΅Π½Ρ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΡ ΡΡΠ°ΡΡΡ Π²Π΅Π»ΠΈΡΠ°ΠΉΡΠ΅Π³ΠΎ ΠΈ ΠΌΠΎΠ³ΡΡΠ΅Π³ΠΎ ΠΈ, ΠΊ ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΡ, Π½ΡΠ½Π΅ ΠΏΠΎΠΊΠΎΠΉΠ½ΠΎΠ³ΠΎ (Π·Π΅ΠΌΠ»Ρ ΡΠ΅Π±Π΅ ΠΏΡΡ ΠΎΠΌ, ΠΡΡΡΡ !) ΠΠΈΠΊΠΎΠ»Π°Ρ ΠΠΈΡ Π°ΡΠ΅Π²Π° aka ΠΡΠΈΡ ΠΠ°ΡΠΏΠ΅ΡΡΠΊΠΈ Β«ΠΠΎΠ³ΡΡΠΆΠ΅Π½ΠΈΠ΅ Π² ΡΠ΅Ρ Π½ΠΈΠΊΡ ΠΈ ΡΠΈΠ»ΠΎΡΠΎΡΠΈΡ GDBΒ».
ΠΠ΅ΡΠ²ΠΎΠ΅, ΡΡΠΎ Π½ΡΠΆΠ½ΠΎ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ gdb β ΡΠΎΠ±ΡΠ°ΡΡ ΠΊΠΎΠ΄ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π² ELF-ΠΎΠ±ΡΠ°Π·, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ ΠΎΡΠ»Π°Π΄ΠΎΡΠ½ΡΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»Ρ
$ avr-as -mmcu=atmega16 -g --gstabs -o test.o test.S
ΠΠ»ΡΡΠΈ -g ΠΈ —gstabs Π³Π΅Π½Π΅ΡΠΈΡΡΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ ΠΎΡΠ»Π°Π΄ΠΎΡΠ½ΡΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»Ρ ΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΠ±ΡΠ°Π· Π΄Π»Ρ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΉ ΠΎΡΠ»Π°Π΄ΠΊΠΈ Π² gdb. ΠΠΎΠΌΠΏΠΎΠ½ΡΠ΅ΠΌ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΡΠΉ ΡΠ°ΠΉΠ» Π² ELF
$ avr-ld -m avr4 -o test.elf test.o
ΠΠΎΠ»ΡΡΠ΅Π½Π½ΡΠΉ ΠΎΠ±ΡΠ°Π· ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ Π΄Π»Ρ ΠΎΡΠ»Π°Π΄ΠΊΠΈ Π½Π°ΡΠ΅Π³ΠΎ ΡΠ΅ΡΡΠ°. ΠΠ· Π½Π΅Π³ΠΎ ΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈ hex-ΡΠ°ΠΉΠ»
$ avr-objcopy -j .text -j .data -O ihex test.elf test.hex
ΡΠ²Π½ΠΎ ΡΠΊΠ°Π·ΡΠ²Π°Ρ ΠΊΠ»ΡΡΠ΅ΠΌ -j Π²ΠΊΠ»ΡΡΠ°Π΅ΠΌΡΠ΅ Π² ΠΏΡΠΎΡΠΈΠ²ΠΊΡ ΡΠ΅ΠΊΡΠΈΠΈ, ΠΊΠ»ΡΡΠ΅ΠΌ -O ihex ΡΠΎΡΠΌΠ°Ρ Π²ΡΠ²ΠΎΠ΄Π° (intel HEX). ΠΠΎΠ»ΡΡΠ°Π΅ΠΌ ΡΠΎΡ ΠΆΠ΅ ΡΠ°ΠΉΠ», ΡΡΠΎ ΠΈ Π² ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅:
test.hex:060000000AE00395FECFAB
:00000001FF
ΠΡΡΠ°Π»ΠΎΡΡ Π·Π°Π³ΡΡΠ·ΠΈΡΡ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΠΉ ΠΊΠΎΠ΄ Π² ΡΠΌΡΠ»ΡΡΠΎΡ ΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏΠ½ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΎΡΠ»Π°Π΄ΠΊΠΈ.
ΠΡΠΎΡ Π²ΠΎΠΏΡΠΎΡ ΡΠ»ΠΎΠΆΠ½Π΅Π΅ ΠΏΡΠΎΡΠΈΡ . ΠΠ½ΠΎΡ Π±ΡΠ»ΠΎ Π½Π°ΠΉΠ΄Π΅Π½ΠΎ Π΄Π²Π° Π΄ΠΎΡΡΠΎΠΉΠ½ΡΡ ΠΊΠ°Π½Π΄ΠΈΠ΄Π°ΡΠ°: simavr, ΠΈΠΌΠ΅ΡΡΠΈΠΉΡΡ Π² ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡΡ Π°ΡΡΠ° ΠΈ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌΡΠΉ ΠΏΡΠΎΡΡΡΠΌ:
$ sudo pacman -S simavr
ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠΉ ΡΠΈΠΌΡΠ»ΡΡΠΎΡ simulavr, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π΅ Π±ΡΠ» Π½Π°ΠΉΠ΄Π΅Π½ Π΄Π°ΠΆΠ΅ Π² AUR, ΠΏΡΠΈ ΡΠΎΠΌ ΡΡΠΎ ΠΎΡΠ½ΠΎΠ²Π½Π°Ρ ΠΌΠ°ΡΡΠ° ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ ΠΈΠ½ΡΡ Π² ΡΠ΅ΡΠΈ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΎ Π½Π΅ΠΌ. Π‘ΠΎΠ±ΡΠ°ΡΡ ΠΈΠ· ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊΠΎΠ² Ρ ΡΠ΅Π»ΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ PKGBUILD Π΄Π»Ρ AUR Ρ ΠΌΠ΅Π½Ρ Π½Π΅ Π²ΡΡΠ»ΠΎ, Ρ ΠΎΡΡ Ρ ΠΏΠ΅ΡΠ΅Π±ΡΠ°Π» Π²ΡΠ΅ Π°Π΄Π΅ΠΊΠ²Π°ΡΠ½ΡΠ΅ Π²Π΅ΡΠΊΠΈ Π² ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ. ΠΡΠΈΡΠ»ΠΎΡΡ ΠΏΡΠΈΠ±ΠΈΡΡ Π·Π²Π΅ΡΡΠΊΠΈΠΉ ΠΊΠΎΡΡΡΠ»Ρ, ΡΠΊΠ°ΡΠ°Π² DEB-ΠΏΠ°ΠΊΠ΅Ρ Π΄Π»Ρ Debian, ΠΏΡΠ΅Π²ΡΠ°ΡΠΈΠ² Π΅Π³ΠΎ Π² ΠΏΠ°ΠΊΠ΅Ρ Π΄Π»Ρ Π°ΡΡΠ° Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠΈΠ»ΠΈΡΡ debtap.
$ debtap simulavr_0.1.2.2-7+b2_amd64.deb
ΠΈ Π΄Π°Π»Π΅Π΅ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΠΉ Π°ΡΡ-ΠΏΠ°ΠΊΠ΅Ρ Π±Π΅Π· ΠΏΡΠΎΠ±Π»Π΅ΠΌ ΡΡΠ°Π²ΠΈΡΡΡΡ Π² ΡΠΈΡΡΠ΅ΠΌΡ.
ΠΠ΅ΡΡΠΈΡ ΡΡΠ° Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ Π΄ΡΠ΅Π²Π½ΡΡ, Π° ΡΠ΅ΠΊΡΡΠΈΠΉ ΡΠ΅Π»ΠΈΠ· (ΡΡΠ΄Ρ ΠΏΠΎ Π΄Π°ΡΠ΅ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ° Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ) ΡΡΠ΅Π» Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ Π΄Π°Π»Π΅ΠΊΠΎ.
Π§ΡΠΎ ΠΆΠ΅ ΠΊΠ°ΡΠ°Π΅ΡΡΡ simavr, ΡΠΎ ΠΎΠ½ ΡΡΠ°Π²ΠΈΡΡΡ Π±Π΅Π· ΠΏΡΠΎΠ±Π»Π΅ΠΌ, ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Π±ΠΎΠ»ΡΡΠ΅Π΅ ΡΠΈΡΠ»ΠΎ ΠΠ, Π½ΠΎ Π½Π° ΠΏΠΎΠΏΡΡΠΊΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΊ Π½Π΅ΠΌΡ ΠΎΡΠ»Π°Π΄ΡΠΈΠΊΠΎΠΌ Π²ΡΠ΄Π°Π΅Ρ Π² ΠΊΠΎΠ½ΡΠΎΠ»Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΎ ΠΊΡΡΡΠ΅ ΡΠΌΡΠ»ΡΡΠΎΡΠ° ΠΈ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ Ρ ΡΡΠΈΠΌ ΠΌΠ½Π΅ ΠΏΠΎΠΊΠ° Π½Π΅ ΡΠ΄Π°Π»ΠΎΡΡ. Π’ΡΡ Ρ ΡΠ½ΠΎΠ²Π° Π°ΠΏΠ΅Π»Π»ΠΈΡΡΡ ΠΊ ΡΠ²Π΅Π΄ΡΡΡΠ΅ΠΌΡ Π² Π²ΠΎΠΏΡΠΎΡΠ΅ ΡΠΈΡΠ°ΡΠ΅Π»Ρ ΠΈ ΡΠ°ΡΡΡΠΈΡΡΠ²Π°Ρ Π½Π° ΠΏΠΎΠ΄ΡΠΊΠ°Π·ΠΊΡ.
ΠΠΎΠΊΠ° ΠΆΠ΅ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ Π΄Π»Ρ ΠΎΡΠ»Π°Π΄ΠΊΠΈ ΠΊΠΎΡΡΡΠ»ΡΠ½ΠΎ ΠΏΠΎΡΡΠ°Π²Π»Π΅Π½Π½ΡΠΉ simulavr
ΠΡΠ°ΠΊ, ΡΠ½Π°ΡΠ°Π»Π° ΠΎΡΠ»Π°Π΄ΠΈΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Ρ Π°ΡΠ΄ΠΊΠΎΡΠ½ΠΎ β ΠΈΠ· ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ Π·Π°ΠΏΡΡΡΠΈΠΌ ΡΠΌΡΠ»ΡΡΠΎΡ
$ simulavr -d atmega16 -c 8000000 -g -P simulavr-disp
Π·Π°ΠΏΡΡΠΊΠ°Π΅ΠΌ ΡΠΌΡΠ»ΡΡΠΎΡ ATMega 16 (ΠΊΠ»ΡΡ -d) Π½Π° ΡΠ°ΡΡΠΎΡΠ΅ 8 ΠΠΡ (ΠΊΠ»ΡΡ -Ρ) Ρ ΠΎΠΏΡΠΈΠ΅ΠΉ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΉ ΠΎΡΠ»Π°Π΄ΠΊΠΈ ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΊΡΠ°ΡΠΈΠ²ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠΌΠΎΡΡΠ° ΡΠ΅Π³ΠΈΡΡΡΠΎΠ² ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ° (ΠΎΠΏΡΠΈΡ -P, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎ Π΄Π°Π½Π½ΡΠΌ ΠΈΠ· ΡΠ΅ΡΠΈ Π² ΡΠ²Π΅ΠΆΠ°ΠΉΡΠ΅ΠΉ Π²Π΅ΡΡΠΈΠΈ ΡΠΌΡΠ»ΡΡΠΎΡΠ° ΡΠ±ΡΠ°Π½Π°). ΠΠΈΠ΄ΠΈΠΌ ΠΎΠΊΠΎΡΠΊΠΎ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π° Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΡΠΌ ΡΠ΅Π³ΠΈΡΡΡΠΎΠ² ΠΈ ΠΏΠ°ΠΌΡΡΠΈ
Π½Π°Π±Π»ΡΠ΄Π°Π΅ΠΌ Π² ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ Π·Π°ΠΏΡΡΠΊΠ° ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅
Waiting on port 1212 for gdb client to connect...
ΡΠΎΠΎΠ±ΡΠ°ΡΡΠ΅Π΅ Π½Π°ΠΌ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ ΡΠΌΡΠ»ΡΡΠΎΡ ΠΆΠ΄Π΅Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΎΡΠ»Π°Π΄ΡΠΈΠΊΠ° Π½Π° ΠΏΠΎΡΡΡ 1212 (ΠΏΠΎΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ ΠΏΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅ ΠΊΠ»ΡΡΠ΅ΠΌ -p). Π Π΄ΡΡΠ³ΠΎΠΉ ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ ΡΡΠ°ΡΡΡΠ΅ΠΌ ΠΎΡΠ»Π°Π΄ΡΠΈΠΊ:
$ avr-gdb -q -tui
ΠΏΠ΅ΡΠ²ΡΠΉ ΠΊΠ»ΡΡ ΡΠ±Π΅ΡΠ΅Ρ ΠΏΠ°ΡΠΎΡΠ½ΡΠΉ Π²ΡΡ Π»ΠΎΠΏ gdb ΠΏΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅, Π²ΡΠΎΡΠ°Ρ Π³ΡΡΠΏΠΏΠ° ΠΊΠ»ΡΡΠ΅ΠΉ Π°ΠΊΡΠΈΠ²ΠΈΡΡΠ΅Ρ ΠΏΡΠΎΡΠΌΠΎΡΡ ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊΠΎΠ² Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΠΎΡΠ»Π°Π΄ΠΊΠΈ Π² ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½Π° ΠΌΠ½ΠΎΠΉ Π΄Π»Ρ Π½Π°Π³Π»ΡΠ΄Π½ΠΎΡΡΠΈ (Π½Π° Π΄Π΅Π»Π΅ ΡΡΠ° ΠΎΠΏΡΠΈΡ Π½Π΅ΡΠ΄ΠΎΠ±Π½Π° ΠΏΠΎ ΡΡΠ΄Ρ ΠΏΡΠΈΡΠΈΠ½). Π ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ ΠΌΡ ΡΠ²ΠΈΠ΄ΠΈΠΌ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅:
ΠΠΎΠ΄Π»ΡΡΠ°Π΅ΠΌΡΡ ΠΊ ΡΠΌΡΠ»ΡΡΠΎΡΡ
(gdb) target remote:1212
ΠΠ°Π³ΡΡΠΆΠ°Π΅ΠΌ ELF-ΠΎΠ±ΡΠ°Π· Π² ΡΠΌΡΠ»ΡΡΠΎΡ (Π΄Π°, ΠΈΠΌΠ΅Π½Π½ΠΎ Π΅Π³ΠΎ Π° Π½Π΅ hex, Π½Π° ΡΠ΅ΠΌ Ρ ΠΎΠ±ΠΆΠ΅Π³ΡΡ Π² ΡΠ°ΠΌΠΎΠΌ Π½Π°ΡΠ°Π»Π΅) d ‘vekznjh
(gdb) load test.elf
ΠΠ°Π³ΡΡΠΆΠ°Π΅ΠΌ ΠΎΡΠ»Π°Π΄ΠΎΡΠ½ΡΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»Ρ:
(gdb) file test.elf
ΠΎΡΠ²Π΅ΡΠΈΠ² Β«yesΒ» Π½Π° Π·Π°Π΄Π°Π½Π½ΡΠΉ Π²ΠΎΠΏΡΠΎΡ, ΠΏΠΎΠ»ΡΡΠ°Ρ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠ°ΡΡΠΈΠ½Ρ:
Π§ΡΠΎ ΠΆΠ΅, ΠΌΡ Π²ΠΈΠ΄ΠΈΠΌ Π½Π°Ρ ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊ ΠΈ ΠΎΡΠ»Π°Π΄ΡΠΈΠΊ, Π³ΠΎΡΠΎΠ²ΡΠΉ ΠΊ ΠΏΡΠΈΠ΅ΠΌΡ ΠΊΠΎΠΌΠ°Π½Π΄. ΠΠ°Π΅ΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρ next
(gdb) n
ΠΈ Π²ΠΈΠ΄ΠΈΠΌ ΠΊΠ°ΠΊ ΠΎΡΠ»Π°Π΄ΡΠΈΠΊ Π±ΠΎΠ΄ΡΠΎ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΡΠΈΠ»ΡΡ ΠΏΠΎ ΠΊΠΎΠ΄Ρ.
ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ²ΡΠ΅Π΅ΡΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΡΠ΅Π³ΠΈΡΡΡΠΎΠ² ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ° ΠΊΠ°ΠΊ Π² ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ ΡΠΌΡΠ»ΡΡΠΎΡΠ°
ΡΠ°ΠΊ ΠΈ Π² ΠΎΠΊΠ½Π΅ ΠΎΡΠ»Π°Π΄ΡΠΈΠΊΠ°:
(gdb) info registers
.
.
.
r16 0xa 10
.
.
.
SREG 0x0 0
SP 0x0 0x0 <main>
PC2 0x2 2
pc 0x2 0x2 <M1>
Π‘ ΡΡΠΎΠ³ΠΎ ΠΌΠΎΠΌΠ΅Π½ΡΠ° Π½Π°ΠΌ Π΄ΠΎΡΡΡΠΏΠ΅Π½ Π²Π΅ΡΡ Π±ΠΎΠ³Π°ΡΠ΅ΠΉΡΠΈΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌΡΠΉ ΠΎΡΠ»Π°Π΄ΡΠΈΠΊΠΎΠΌ gdb. ΠΠ΄Π½Π°ΠΊΠΎ,
IDE Eclipse ΠΈΠ·Π²Π΅ΡΡΠ½Π° Π΄Π°Π²Π½ΠΎ. ΠΠ° Π²ΡΠ΅ΠΌΡ ΡΠ²ΠΎΠ΅Π³ΠΎ ΡΡΡΠ΅ΡΡΠ²ΠΎΠ²Π°Π½ΠΈΡ ΠΎΠ½Π° ΠΏΡΠΎΡΠ½ΠΎ ΡΡΠ²Π΅ΡΠ΄ΠΈΠ»Π°ΡΡ Π² ΡΠ°Π·Π½ΡΡ ΠΎΠ±Π»Π°ΡΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΠ ΠΈ ΠΌΠΎΠΆΠ΅Ρ Β«ΡΡΠΏΠΎ Π²ΡΡΒ», Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΠΎΠ±ΡΠΈΡΠ½ΠΎΠΌΡ Π½Π°Π±ΠΎΡΡ ΠΏΠ»Π°Π³ΠΈΠ½ΠΎΠ², ΡΠ°ΡΡΠΈΡΡΡΡΠΈΡ Π΅Ρ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΡ. Π ΡΠ²ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ Ρ Π²ΠΎΡΡΠΎΡΠ³Π°Π»ΡΡ Π΅ΠΉ, Π½ΠΎ Π²ΡΠ΅ΠΌΡ ΡΡΠΎ ΠΏΡΠΎΡΠ»ΠΎ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π² ΠΎΠ±ΡΠ΄Π΅Π½Π½ΠΎΠΉ ΡΠ°Π±ΠΎΡΠ΅ Ρ Π½Π΅Ρ Π΅ΡΡΡ ΠΌΠ°ΡΡΠ° ΠΌΠ΅Π»ΠΊΠΈΡ Π½ΡΠ°Π½ΡΠΎΠ², ΡΠ°Π·Π΄ΡΠ²Π°ΡΡΠΈΡ ΡΡ Π² Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠΈ (Π½Π° ΡΠ°Π±ΠΎΡΠ΅ Π² ΠΏΡΠΎΠ΄Π°ΠΊΡΠ΅Π½Π΅ Ρ ΠΏΡΠ΅Π΄ΠΏΠΎΡΠ΅Π» Π΄Π»Ρ ΡΠΎΠ³ΠΎ ΠΆΠ΅ C/C++ QtCreator Π² ΡΠΈΠ»Ρ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠΈ Π΄Π΅ΡΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ, ΠΎ ΡΠ΅ΠΌ Π½Π΅ ΠΆΠ°Π»Π΅Ρ).
Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Ρ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ ΡΠ΅ΡΠ°Π΅ΠΌΠΎΠΉ Π½Π°ΠΌΠΈ Π·Π°Π΄Π°ΡΠΈ ΠΎΠ½Π° Π²ΠΏΠΎΠ»Π½Π΅ ΡΠ΄ΠΎΠ²Π»Π΅ΡΠ²ΠΎΡΡΠ΅Ρ Π΅Ρ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡΠΌ. ΠΠ»Ρ ΡΠ°Π±ΠΎΡΡ Ρ AVR Π² Eclipse ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΡΠ»Π΅Π΄ΡΡΡΠΈΡ ΠΏΠ»Π°Π³ΠΈΠ½ΠΎΠ²
ΠΈ, Π΄Π°Π±Ρ Π½Π΅ ΠΏΠ΅ΡΠ΅Π³ΡΡΠΆΠ°ΡΡ ΡΡΠ°ΡΡΡ Ρ ΠΎΡΡΡΠ»Π°Ρ ΡΠΈΡΠ°ΡΠ΅Π»Ρ ΠΊ ΠΏΠΎΠΈΡΠΊΡ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΏΠ»Π°Π³ΠΈΠ½ΠΎΠ² ΠΊ Eclipse ΠΎΠΏΠΈΡΡΠ²Π°Π΅ΡΡΡ ΠΎΡΠ΅Π½Ρ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ. ΠΠ°ΠΆΠ½ΡΠΌ Π·Π΄Π΅ΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΠ° ΠΏΡΠΎΠ΅ΠΊΡΠ°, ΠΎ ΡΠ΅ΠΌ Ρ ΡΠ°ΡΡΠΊΠ°ΠΆΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ.
Eclipse ΠΏΠΎ ΡΠ²ΠΎΠ΅ΠΉ ΡΡΡΠΈ ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½ Π½Π° C/C++ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΡ, ΠΏΠΎΡΡΠΎΠΌΡ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠ΅ΠΉ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΡΠ΅ΡΠ΅Π· ΠΈΠΌΠ΅ΡΡΠΈΠΉΡΡ Makefile, ΠΊΠΎΡΠΎΡΡΠΉ ΠΈ Π½Π°ΠΏΠΈΡΠ΅ΠΌ Π΄Π»Ρ Π½Π°ΡΠ΅Π³ΠΎ ΡΠ΅ΡΡΠ°. ΠΠΎΡ ΠΎΠ½
Makefile
# ΠΠ΅ΠΊΠ»Π°ΡΠΈΡΡΠ΅ΠΌ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅
DEVICE = atmega16
TARGET = test
OBJECTS = $(TARGET).o
ELF = $(TARGET).elf
HEX = $(TARGET).hex
# ΠΠ°Π΄Π°Π΅ΠΌ ΠΏΡΠ°Π²ΠΈΠ»Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ
COMPILE = avr-as -mmcu=$(DEVICE) -g --gstabs
# ΠΠ»Π°Π²Π½Π°Ρ ΡΠ΅Π»Ρ - HEX-ΡΠ°ΠΉΠ» ΠΏΡΠΎΡΠΈΠ²ΠΊΠΈ
all: hex
# ΠΡΠ°Π²ΠΈΠ»ΠΎ ΡΠ±ΠΎΡΠΊΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΡΡ
ΠΌΠΎΠ»ΡΠ»Π΅ΠΉ: Π±Π΅ΡΡΡΡΡΡ Π²ΡΠ΅ ΠΈΡΡ
ΠΎΠ΄Π½ΠΈΠΊΠΈ
# Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ *.S ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΡΡ Π² ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΡΠ΅ ΠΌΠΎΠ΄ΡΠ»ΠΈ *.o
.S.o:
$(COMPILE) -c $< -o $@
# ΠΡΠ°Π²ΠΈΠ»ΠΎ ΠΎΡΠΈΡΡΠΊΠΈ - ΡΠ΄Π°Π»ΡΠ΅ΠΌ Π²ΡΠ΅ ΠΏΡΠΎΠ΄ΡΠΊΡΡ ΡΠ±ΠΎΡΠΊΠΈ
clean:
rm -f $(HEX) $(ELF) $(OBJECTS)
# ΠΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠ° Π²ΡΠ΅Ρ
ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΡΡ
ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ Π² ELF
elf: $(OBJECTS)
avr-ld -m avr4 -o $(ELF) $(OBJECTS)
# ΠΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ ELF Π² HEX
hex: elf
avr-objcopy -j .text -j .data -O ihex $(ELF) $(HEX)
ΠΠ°ΠΏΠΈΡΠ°Π² ΡΡΠΎΡ ΠΎΠΏΡΡ ΠΎΡΠΊΡΡΠ²Π°Π΅ΠΌ Eclipse ΠΈ ΡΠΎΠ·Π΄Π°Π΅ΠΌ Π½ΠΎΠ²ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ File -> New -> Project, Π²ΡΠ±ΠΈΡΠ°Ρ ΡΠΈΡΠ½ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Makefile
ΠΆΠΌΠ΅ΠΌ Next, Π² ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΠΎΠΊΠ½Π΅ Π²ΡΠ±ΠΈΡΠ°Ρ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° Ρ ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊΠ°ΠΌΠΈ ΠΈ Makefile
Π¨Π»Π΅ΠΏΠ°Π΅ΠΌ Finish ΠΈ Π²ΠΈΠ΄ΠΈΠΌ Π½Π°Ρ ΠΏΡΠΎΠ΅ΠΊΡ Π²ΠΎ Π²ΡΠ΅ΠΉ ΠΊΡΠ°ΡΠ΅
ΠΠ΄Π΅ΠΌ Π² ΠΌΠ΅Π½Ρ Project -> Build all ΠΈ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ Π²ΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ Π½Π°ΠΌ Π±ΠΈΠ½Π°ΡΠ½ΠΈΠΊΠΈ:
19:34:51 **** Build of configuration Default for project test ****
make all
avr-as -mmcu=atmega16 -g --gstabs -c test.S -o test.o
avr-ld -m avr4 -o test.elf test.o
avr-objcopy -j .text -j .data -O ihex test.elf test.hex
19:34:51 Build Finished (took 128ms)
Π’Π΅ΠΏΠ΅ΡΡ Π½Π°ΡΡΡΠΎΠΈΠΌ Π·Π°ΠΏΡΡΠΊ ΡΠΌΡΠ»ΡΡΠΎΡΠ°, ΠΊΠ°ΠΊ Π²Π½Π΅ΡΠ½Π΅Π³ΠΎ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ° ΠΏΡΠΎΠ΅ΠΊΡΠ° Π·Π°ΠΉΠ΄Ρ Π² Run -> External Tools, ΡΠΎΠ·Π΄Π°Π² Π½ΠΎΠ²ΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠ°ΠΌΠΈ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΌΠΈ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΠΌ ΡΠΊΡΠΈΠ½Π°ΠΌ
Π’ΡΡ ΠΌΡ ΡΠΎΠΎΠ±ΡΠ°Π΅ΠΌ ΡΡΠ΅Π΄Π΅, ΡΡΠΎ Ρ ΠΎΡΠΈΠΌ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΡΠΌΡΠ»ΡΡΠΎΡ Ρ Π½ΡΠΆΠ½ΡΠΌΠΈ Π½Π°ΠΌ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ, ΠΏΠΎΠΌΠ΅ΡΡΠΈΠ² ΠΏΡΠ½ΠΊΡ Π·Π°ΠΏΡΡΠΊΠ° Π² ΠΌΠ΅Π½Ρ Run β External Tools.
ΠΡΠΈΠΌΠ΅Π½ΡΠ΅ΠΌ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ, ΠΈΠ΄Π΅ΠΌ Π² ΠΌΠ΅Π½Ρ Run β External Tools β atmega16 ΠΈ Π½Π°Π±Π»ΡΠ΄Π°Π΅ΠΌ Π·Π°ΠΏΡΡΠΊ ΡΠΌΡΠ»ΡΡΠΎΡΠ°:
Π₯ΠΎΡΠΎΡΠΎ, ΡΠ΅ΠΏΠ΅ΡΡ Π½Π°ΡΡΡΠΎΠΈΠΌ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ ΠΎΡΠ»Π°Π΄ΠΊΠΈ Π½Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°. ΠΠ΄Π΅ΠΌ Π² ΠΌΠ΅Π½Ρ Run β Debug Configuratuions ΠΈ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π΅ΠΌ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΡΡ ΠΎΡΠ»Π°Π΄ΠΊΡ ΡΠ΅ΡΠ΅Π· GDB.
Π½Π΅ Π·Π°Π±ΡΠ²Π°Ρ ΡΠΊΠ°Π·Π°ΡΡ ΡΠΈΠΏ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ Ρ ΡΠ΅ΡΠ²Π΅ΡΠΎΠΌ ΡΠΈΠΌΡΠ»ΡΡΠΈΠΈ:
ΠΈ ΡΠΊΠ°Π·Π°Π², ΠΊΠ°ΠΊΠΈΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΡΠ»Π΅Π΄ΡΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΏΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅ ΠΎΡΠ»Π°Π΄ΠΊΠΈ:
ΠΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΡΡΠ°Π²ΠΈΠΌ Π³Π°Π»ΠΊΠΈ Π½Π° Load image ΠΈ Load Symbols β ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΡΠ»Π°Π΄ΡΠΈΠΊΡ Π·Π°Π³ΡΡΠ·ΠΈΡΡ ΠΏΡΠΎΡΠΈΠ²ΠΊΡ Π² ΡΠΌΡΠ»ΡΡΠΎΡ ΠΈ ΠΏΡΠΎΡΠ΅ΡΡΡ ΠΎΡΠ»Π°Π΄ΠΎΡΠ½ΡΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»Ρ. Π‘ΡΠ°Π²ΠΈΠΌ ΡΠΎΡΠΊΡ ΠΎΡΡΠ°Π½ΠΎΠ²Π° Π½Π° ΠΌΠ΅ΡΠΊΡ M1.
ΠΠΌΠ΅ΠΌ ΠΊΠ½ΠΎΠΏΠΊΠΈ Apply ΠΈ Debug ΠΈβ¦ Π²ΡΠ°Π»Ρ!
ΠΡΠ»Π°Π΄ΡΠΈΠΊ ΠΏΠΎΡΠ»ΡΡΠ½ΠΎ ΡΡΠ°Π» Π½Π° ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ ΡΠΎΡΠΊΠ΅ ΠΎΡΡΠ°Π½ΠΎΠ²Π°. ΠΠΎΡΡΡΠΏΠ΅Π½ ΠΏΡΠΎΡΠΌΠΎΡΡ Π΄Π°ΠΌΠΏΠ° ΠΏΠ°ΠΌΡΡΠΈ ΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ ΡΠ΅Π³ΠΈΡΡΡΠΎΠ². ΠΠΌΠ΅ΠΌ F5 (ΠΈΠ»ΠΈ F6) ΠΈ ΡΡΠ°ΡΡΠΈΡΡΠ΅ΠΌ Π½Π°Ρ ΠΊΠΎΠ΄ ΠΏΠΎ ΡΠ°Π³Π°ΠΌ.
Π’Π΅ΠΏΠ΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ Ρ ΠΎΡΡ Π΄ΠΎ ΠΏΠΎΡΠΈΠ½Π΅Π½ΠΈΡ ΡΡΠ°ΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠΎΠ΄, ΡΠΌΠΎΡΡΠ΅ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠ΅Π³ΠΈΡΡΡΠΎΠ² ΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ , ΠΏΡΠ°Π²ΠΈΡΡ ΠΊΠΎΠ΄, ΡΠ½ΠΎΠ²Π° ΡΡΠ°ΡΡΠΈΡΠΎΠ²Π°ΡΡ, Π² ΠΎΠ±ΡΠ΅ΠΌ Π·Π°Π½ΠΈΠΌΠ°ΡΡΡΡ ΠΏΡΠΈΠ²ΡΡΠ½ΡΠΌ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ.
Π§ΡΠΎ Ρ ΠΎΡΡ ΡΠΊΠ°Π·Π°ΡΡ Π² ΡΠΈΠ½Π°Π»Π΅? Π― ΡΠΆΠ΅ ΡΡΡΡΡΡ ΡΠ°Π· Π³ΠΎΠ²ΠΎΡΠΈΠ» ΠΎ ΡΠΎΠΌ, ΡΡΠΎ Π²ΡΠ΅ ΠΌΠΎΠΈ ΡΡΠ°ΡΡΠΈ Π½Π° ΡΠ΅ΡΡΡΡΠ°Ρ Ρ Π°Π±Ρ ΠΈ Π³ΠΈΠΊΡΠ°ΠΉΠΌΡ β ΠΎΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π»ΠΈΡΠ½ΠΎΠ³ΠΎ ΠΎΠΏΡΡΠ° ΠΈ ΡΡΠΏΠΎΡ ΡΡΠ±ΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΠ³ΠΎ ΠΌΠ½Π΅Π½ΠΈΡ. Π Π΅ΡΠ΅Π½Π° Π·Π°Π΄Π°ΡΠ° β ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΠ Π΄Π»Ρ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠΎΠ² AVR Π² ΡΡΠ΅Π΄Π΅ Linux. ΠΡΠ° ΡΡΠ°ΡΡΡ β ΠΏΡΠΎΠ΄ΡΠΊΡ Π΄ΠΎΠ»Π³ΠΎΠ³ΠΎ Π³ΡΠ³Π»Π΅Π½ΠΈΡ ΠΈ ΡΠ±ΠΎΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΈΠ· ΡΠ°Π·ΡΠΎΠ·Π½Π΅Π½Π½ΡΡ ΡΠ΅ΡΠ΅Π²ΡΡ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΎΠ². Π¦Π΅Π»Ρ Π΅Ρ β Π½Π°ΡΠΎΠ»ΠΊΠ½ΡΡΡ Π½ΠΎΠ²ΠΈΡΠΊΠ° Π½Π° ΠΏΠΎΠΈΡΠΊ Π² Π½ΡΠΆΠ½ΠΎΠΌ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠΈ. Π‘ΡΠ°ΡΡΡ Π½Π΅ ΠΏΡΠ΅ΡΠ΅Π½Π΄ΡΠ΅Ρ Π½Π° Π°ΠΊΠ°Π΄Π΅ΠΌΠΈΡΠ½ΠΎΡΡΡ, ΠΎΠ½Π° Π»ΠΈΡΡ ΠΏΡΠΎΠ΄ΡΠΊΡ ΠΌΠΎΠΈΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ ΠΊΠΎΠΏΠ°Π½ΠΈΠΉ ΠΈ ΠΏΠΎΠΏΡΡΠΊΠ° ΠΏΠΎΠ΄Π΅Π»ΠΈΡΡΡ ΡΠΎΠ±ΡΠ°Π½Π½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠ΅ΠΉ, Π° ΡΠ°ΠΊ ΠΆΠ΅ ΠΏΡΠΈΠ²Π»Π΅ΡΡ Π·Π°ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠΎΠ²Π°Π½Π½ΡΡ Π»ΡΠ΄Π΅ΠΉ ΠΊ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎΠΉ ΠΌΠ½Π΅ ΡΠ΅ΠΌΠ΅.
Π’ΡΡ ΠΌΠ½ΠΎΠ³ΠΎ ΠΎ ΡΠ΅ΠΌ Π½Π΅ ΡΠΊΠ°Π·Π°Π½ΠΎ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΠΎ ΠΏΡΠΎΡΠΈΠ²ΠΊΠ΅ ΡΠ΅ΡΠ΅Π· avrdude, ΠΊΠΎΡΠΎΡΡΠΉ (sic!) Π΅ΡΡΡ ΠΊΡΠΎΡΡΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅Π½Π½Π°Ρ ΡΡΠΈΠ»ΠΈΡΠ° ΠΏΡΠΎΡΠΈΠ²ΠΊΠΈ Π΄Π»Ρ ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²Π° AVR. ΠΡΠ»ΠΈ Ρ ΡΠΈΡΠ°ΡΠ΅Π»Π΅ΠΉ Π±ΡΠ΄Π΅Ρ ΠΆΠ΅Π»Π°Π½ΠΈΠ΅, Π° Ρ ΠΌΠ΅Π½Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ, ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΈ Π΅Ρ, ΠΏΠΎΠΌΠΈΠ³Π°Π΅ΠΌ ΡΠ²Π΅ΡΠΎΠ΄ΠΈΠΎΠ΄Π°ΠΌΠΈ, ΠΏΠΎΡΠ»Π΅ΠΌ ΡΠ»ΠΎΠ²ΠΎ Β«ΠΆΠΎΠΏΠ°Β» Β«ΡΡΠ°ΡΡΡΠ΅Β» ΡΠ΅ΡΠ΅Π· USART ΠΈ ΡΠ°ΠΊ Π΄Π°Π»Π΅Π΅. Π’Π΅ΠΌΠ° Π½Π΅ΠΈΡΡΠ΅ΡΠΏΠ°Π΅ΠΌΠ° ΠΈ Π΄ΠΎΡΡΠΎΠΉΠ½Π° ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΡ. ΠΡΠ΅ΠΌΡ ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ.
Π ΠΏΠΎΠΊΠ°, Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΠΌΠΎΠ΅Π³ΠΎ ΡΠΈΡΠ°ΡΠ΅Π»Ρ Π·Π° Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΈ Π½Π°Π΄Π΅ΡΡΡ Π½Π° Π½ΠΎΠ²ΡΡ Π²ΡΡΡΠ΅ΡΡ!