Site Loader

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΊ Atmega8 — β„–5

Как я ΠΈΠ·ΡƒΡ‡Π°Π» ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Ρ‹ AVR

  1. Π’Ρ‹ здСсь: Β 
  2. Главная
  3. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅
  4. Как я ΠΈΠ·ΡƒΡ‡Π°Π» ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Ρ‹ AVR
  5. ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΊ Atmega8 — β„–5

Β 

Β 

 НачнСм с Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° Ρ€Π°Π±ΠΎΡ‚Ρ‹ нашСй ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹!

1. Если Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ КН1 ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π½ΡƒΡŽ ΠΊ ΠΏΠΎΡ€Ρ‚Ρƒ PB1, Ρ‚ΠΎ Π½Π° Π½ΠΎΠΆΠΊΠ΅ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° β„–15 появится минус источника питания ΠΈ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡΡ Π±Π΅Π³ΡƒΡ‰ΠΈΠΉ ΠΎΠ³ΠΎΠ½Π΅ΠΊ.

2. ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π±Π΅Π³ΡƒΡ‰Π΅Π³ΠΎ огонька с использованиСм Ρ†ΠΈΠΊΠ»Ρ‹ for.

ΠŸΠ΅Ρ€Π΅ΠΉΠ΄Π΅ΠΌ ΠΊ написанию ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ Ρ€ΠΈΡΠΎΠ²Π°Π½ΠΈΡŽ элСктричСской схСмы!

1. Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ Π½ΠΎΠ²Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π² Atmel Studio 7 ΠΏΠΎ ΠΏΡƒΡ‚ΠΈ

File > New > Projec…, Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ C/C++Β ΠΈ Ρ‚ΠΈΠΏ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° GCC C Executable Project, Π²Π²ΠΎΠ΄ΠΈΠΌ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° (Name: ΠΈ Solution name:).

2. Π’Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ Ρ‚ΠΈΠΏ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Π±ΡƒΠ΄Π΅ΠΌ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ, Π² нашСм случаС Atmega8.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π½Π°ΠΌ Π²Ρ‹Π΄Π°Π΅Ρ‚ ΠΊΠΎΠ΄ Π² Ρ„Π°ΠΉΠ»Π΅ main.c*

Β ΠŸΡ€ΠΈΠ²ΠΎΠ΄ΠΈΠΌ Π΅Π³ΠΎ ΠΊ Ρ‡ΠΈΡ‚Π°Π±Π΅Π»ΡŒΠ½ΠΎΠΌΡƒ Π²ΠΈΠ΄Ρƒ, удаляСм лишниС ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ.

Π”ΠΎΠ±Π°Π²ΠΈΠΌ Π² ΡΠ»Π΅ΠΊΡ‚Ρ€ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ схСму ΠΈΠ· ΡΡ‚Π°Ρ‚ΡŒΠΈ Π‘Π΅Π³ΡƒΡ‰ΠΈΠ΅ ΠΎΠ³Π½ΠΈ Atmega8 ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π½Π° БИ ΠΊΠ½ΠΎΠΏΠΊΡƒ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ:

И Ρ‚Π°ΠΊ схСма Ρƒ нас Π΅ΡΡ‚ΡŒ, Π½Π° Π½Π΅ΠΉ ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½Ρ‹ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€, источник напряТСния 5Π’, 7 рСзисторов, 7 свСтодиодов, ΠΊ ΠΏΠΎΡ€Ρ‚Ρƒ PB1Β  Π½ΠΎΠΆΠΊΠΈ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° β„–15 ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π° ΠΊΠ½ΠΎΠΏΠΊΠ° КН1, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½Ρ‹ Π²Ρ‹Π²ΠΎΠ΄Ρ‹ для ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π°, вСрнСмся ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅.

Π‘Π²Π΅Ρ‚ΠΎΠ΄ΠΈΠΎΠ΄Ρ‹ Ρƒ нас ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ ΠΊ ΠΏΠΎΡ€Ρ‚Ρƒ Π D, настроим Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Π½ΠΎΠΆΠΊΠΈ ΠΏΠΎΡ€Ρ‚Π° Π D Π½Π° Π²Ρ‹Ρ…ΠΎΠ΄, допишСм Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ DDRD = 0b11111111;, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΊΠ½ΠΎΠΏΠΊΠ° Ρƒ нас ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π° ΠΊ ΠΏΠΎΡ€Ρ‚Ρƒ Π’ настроим Π΅Π³ΠΎ Π½ΠΎΠΆΠΊΠΈ Π½Π° Π²Ρ…ΠΎΠ΄ DDRB = 0b00000000;, Π·Π°Ρ‚Π΅ΠΌ Π²Ρ‹ΠΊΠ»ΡŽΡ‡ΠΈΠΌ ΠΏΠΎΡ€Ρ‚ D ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ PORTD = 0b00000000;, ΠΏΠΎ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡƒ наш ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ ΠΏΠΎΠ΄Π°Π»ΠΈ минус — Π·Π°ΠΌΠΊΠ½ΡƒΠ² ΠΊΠ½ΠΎΠΏΠΊΡƒ, для этого подтянСм Π½ΠΎΠΆΠΊΠΈ ΠΏΠΎΡ€Ρ‚Π° Π’ ΠΊ +5Π² Ρ‡Π΅Ρ€Π΅Π· Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠ΅ рСзисторы ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°Β PORTB = 0b11111111;, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ внСшниС ΠΏΠΎΠ΄Ρ‚ΡΠ³ΠΈΠ²Π°ΡŽΡ‰ΠΈΠ΅ рСзисторы, Π½ΠΎ ΠΎΠ± этом ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ Ρ€Π°Π· ΠΊΠΎΠ³Π΄Π° Π±ΡƒΠ΄Π΅ΠΌ Π±ΠΎΡ€ΠΎΡ‚ΡŒΡΡ с Π΄Ρ€Π΅Π±Π΅Π·Π³ΠΎΠΌ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ².

Π‘ настройкой ΠΏΠΎΡ€Ρ‚ΠΎΠ² Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΠ»ΠΈ, Π΄ΠΎΠ±Π°Π²ΠΈΠΌ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ char r; для Ρ€Π°Π±ΠΎΡ‚Ρ‹ нашСго Π±Π΅Π³ΡƒΡ‰Π΅Π³ΠΎ огонька, присвоим Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π΅ #define имя S ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΎ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ΅ Π½Π° 0,2 сСкунды. Π§Ρ‚ΠΎΠ±Ρ‹ наши свСтодиоды Π·Π°ΠΌΠΈΠ³Π°Π»ΠΈ, Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ Π·Π°Π΄Π΅Ρ€ΠΆΠ΅ΠΊ #includeΒ <util/delay.h>, Π° для мигания Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ _delay_ms(), Π΄Π°Π»Π΅Π΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° #defineΒ ΡƒΠΊΠ°ΠΆΠ΅ΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅, Ρ‡Ρ‚ΠΎ наш ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΎΡ‚ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π³ΠΎ Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Π° с частой 8ΠœΠ“Ρ† допишСм Π² ΠΊΠΎΠ΄ #defineΒ F_CPU 8000000UL.

Π’ΠΎΡ‚ получился ΠΊΠΎΠ΄:

Π—Π°ΠΏΠΈΡˆΠ΅ΠΌ Π² наш бСсконСчный Ρ†ΠΈΠΊΠ» while ΠΊΠΎΠ΄ опроса ΠΏΠΎΡ€Ρ‚Π° Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π° ΠΊΠ½ΠΎΠΏΠΊΠ° ΠΈ Ρ†ΠΈΠΊΠ» мигания свСтодиодов:

Для опроса ΠΊΠ½ΠΎΠΏΠΊΠΈ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡΡ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°ΠΌΠΈ if ΠΈ else, строка if (PINB == 0b11111101) ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ссли Π½ΠΎΠΆΠΊΠ° ΠΏΠΎΡ€Ρ‚Π° PB1 Ρ€Π°Π²Π½Π° минусу, Ρ‚ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΠΌ ΠΊΠΎΠ΄ Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΉ красным Π½Π° рисункС Π½ΠΈΠΆΠ΅, ΠΈΠ½Ρ‹ΠΌΠΈ словами запустим ΠΌΠΈΠ³Π°Π½ΠΈΠ΅ свСтодиодов:


Β Π’ ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС else, Π²Ρ‹ΠΊΠ»ΡŽΡ‡ΠΈΠΌ ΠΏΠΎΡ€Ρ‚ D:

НичСго слоТного Π² опросС ΠΏΠΎΡ€Ρ‚ΠΎΠ² ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° Π½Π΅Ρ‚, Π² этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ самый простой опрос Π½ΠΎΠΆΠΊΠΈ ΠΏΠΎΡ€Ρ‚Π° ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°, Π² дальнСйшСм я расскаТу Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ , ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Π΅, Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ Ρ‚Π°ΠΊΠΎΠΌ понятии ΠΊΠ°ΠΊ Π΄Ρ€Π΅Π±Π΅Π·Π³ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ² ΠΈ ΠΊΠ°ΠΊ с Π½ΠΈΠΌ Π±ΠΎΡ€ΠΎΡ‚ΡŒΡΡ!

Β 

Β 

Π˜ΡΡ…ΠΎΠ΄Π½Ρ‹ΠΉ ΠΊΠΎΠ΄ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π‘ΠΊΠ°Ρ‡Π°Ρ‚ΡŒ Π°Ρ€Ρ…ΠΈΠ²

  • Назад
  • Π’ΠΏΠ΅Ρ€Π΅Π΄

Π‘Ρ‚Π°Ρ‚ΡŒΠΈ ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅

ΠžΠΏΡ€ΠΎΡ ΠΊΠ½ΠΎΠΏΠΎΠΊ avr

ПослС ΠΏΠ΅Ρ€Π²Ρ‹Ρ… шагов Π² освоСнии ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ² Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠΉ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Ρ‰ΠΈΠΊ Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ ΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ свои познания Π² ΠΏΠ΅Ρ€Π²Ρ‹Ρ… ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠΎΠ΄Π΅Π»ΠΊΠ°Ρ…, часто ΠΏΡ‹Ρ‚Π°ΡΡΡŒ «ΠΌΠΎΡ€Π³Π°Ρ‚ΡŒ свСтодиодами» Π² зависимости ΠΎΡ‚ состояния Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… ΠΏΠΎΡ€Ρ‚ΠΎΠ² Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€. Π’ΠΎΡ‚ ΠΏΡ€ΠΎ опрос состояния Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… ΠΏΠΎΡ€Ρ‚ΠΎΠ² ΠΌΡ‹ ΠΈ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ. Π—Π° состояниС ΠΏΠΎΡ€Ρ‚Π° Π²Π²ΠΎΠ΄Π° ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ рСгистр PINB, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° Ρ‡Ρ‚Π΅Π½ΠΈΠ΅, опросив ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ·Π½Π°Ρ‚ΡŒ состояниС Π²Ρ…ΠΎΠ΄Π°. ΠžΠΏΡ€ΠΎΡΠΈΡ‚ΡŒ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ Π²Ρ…ΠΎΠ΄ ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ PINB. Если Π½ΡƒΠΆΠ½ΠΎ ΠΎΠΏΡ€ΠΎΡΠΈΡ‚ΡŒ нСсколько Π²Ρ…ΠΎΠ΄ΠΎΠ² ΠΈ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΎΠ΄Π½ΠΎ Π΄Π΅Π»ΠΎ Π² зависимости ΠΎΡ‚ состояния ΠΏΠΎ Π½ΡƒΠΆΠ½Ρ‹ΠΌ Π²Ρ…ΠΎΠ΄Π°ΠΌ, Ρ‚ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ логичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ:.


Поиск Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎ Π’Π°ΡˆΠ΅ΠΌΡƒ запросу:

Π‘Ρ…Π΅ΠΌΡ‹, справочники, Π΄Π°Ρ‚Π°ΡˆΠΈΡ‚Ρ‹:

ΠŸΡ€Π°ΠΉΡ-листы, Ρ†Π΅Π½Ρ‹:

ΠžΠ±ΡΡƒΠΆΠ΄Π΅Π½ΠΈΡ, ΡΡ‚Π°Ρ‚ΡŒΠΈ, ΠΌΠ°Π½ΡƒΠ°Π»Ρ‹:

Π”ΠΎΠΆΠ΄ΠΈΡ‚Π΅ΡΡŒ окончания поиска Π²ΠΎ всСх Π±Π°Π·Π°Ρ….

По Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡŽ появится ссылка для доступа ΠΊ Π½Π°ΠΉΠ΄Π΅Π½Π½Ρ‹ΠΌ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π°ΠΌ.

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅:

  • ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ ΠΊΠ½ΠΎΠΏΠΊΡƒ ΠΊ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Ρƒ ATtiny2313, простая ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°
  • ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ ΠΊΠ½ΠΎΠΏΠΊΡƒ ΠΊ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Ρƒ ATtiny2313, простая ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°
  • Π Π°Π±ΠΎΡ‚Π° с ΠΊΠ½ΠΎΠΏΠΊΠ°ΠΌΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ наТатия для ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° ATmega8
  • ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΊ AVR. Π¨Π°Π³ β„–12
  • Как ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΡƒΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ Π² МК AVR?
  • ΠžΠΏΡ€ΠΎΡ ΠΊΠ½ΠΎΠΏΠΎΠΊ Π½Π° ассСмблСрС
  • ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹ Π°Π½Π°Π»ΠΈΠ·Π° наТатия стандартных ΠΊΠ½ΠΎΠΏΠΎΠΊ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° AVR MEGA128
  • Easyelectronics.ru
  • ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΊ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Ρƒ
  • AVR Π£Ρ€ΠΎΠΊ 7. Кнопка

ΠŸΠžΠ‘ΠœΠžΠ’Π Π˜Π’Π• Π’Π˜Π”Π•Πž ПО Π’Π•ΠœΠ•: Tiny 2313. ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΈ Π΅Ρ‘ опрос Π½Π° Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ ΠΈ ΠΎΡ‚ΠΆΠ°Ρ‚ΠΈΠ΅.

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ ΠΊΠ½ΠΎΠΏΠΊΡƒ ΠΊ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Ρƒ ATtiny2313, простая ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°


ОбновлСно ЗдравствуйтС Π΄ΠΎΡ€ΠΎΠ³ΠΈΠ΅ Π΄Ρ€ΡƒΠ·ΡŒΡ. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΏΠΎΠΉΠ΄Π΅Ρ‚ Ρ€Π΅Ρ‡ΡŒ ΠΎ ΠΊΠ½ΠΎΠΏΠΊΠ°Ρ… ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π΅ Π±ΠΎΡ€ΡŒΠ±Ρ‹ с Π΄Ρ€Π΅Π±Π΅Π·Π³ΠΎΠΌ. ΠœΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π° Π² ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π΅ ΠΊΡƒΡ‡Π°, Π½ΠΎ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ взгляд Π½Π° Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ вопроса ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ понимания Π΄Π°Π½Π½ΠΎΠ³ΠΎ направлСния. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ я ΠΈ Ρ€Π΅ΡˆΠΈΠ» Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ. Ну Ρ‡Ρ‚ΠΎ ΠΆ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄Π΅ΠΌ ΠΊ ΠΊΠ½ΠΎΠΏΠΊΠ°ΠΌ. Π—Π°Ρ‡Π΅ΠΌ Π½ΡƒΠΆΠ½Ρ‹ ΠΊΠ½ΠΎΠΏΠΊΠΈ? Π’ΠΎΡ‚ Ρ‚ΡƒΡ‚ ΠΈ приходят Π½Π° ΠΏΠΎΠΌΠΎΡ‰ΡŒ ΠΊΠ½ΠΎΠΏΠΊΠΈ.

По сути своСй являСтся Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΎΠΌ внСшнСго физичСского воздСйствия. НС Π±ΡƒΠ΄Π΅ΠΌ Π²Π½Π΅Π΄Ρ€ΡΡ‚ΡŒΡΡ Π² курс элСктротСхники самоС Π³Π»Π°Π²Π½ΠΎΠ΅ Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π½Π°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ Π±Ρ‹Π²Π°ΡŽΡ‚ Ρ„ΠΈΠΊΡΠΈΡ€ΡƒΡŽΡ‰ΠΈΠ΅ ΠΈ Π½Π΅ Ρ„ΠΈΠΊΡΠΈΡ€ΡƒΡŽΡ‰ΠΈΠ΅ΡΡ, Π° ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹ ΠΊΠ½ΠΎΠΏΠΎΠΊ Π±Ρ‹Π²Π°ΡŽΡ‚ Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ Π·Π°ΠΌΠΊΠ½ΡƒΡ‚Ρ‹Π΅ ΠΈ Ρ€Π°Π·ΠΎΠΌΠΊΠ½ΡƒΡ‚Ρ‹Π΅, всС дальшС Π² лСс Π½Π΅ ΠΏΠΎΠΉΠ΄Π΅ΠΌ. Π’ основном ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ Π½Π΅ Ρ„ΠΈΠΊΡΠΈΡ€ΡƒΡŽΡ‰ΠΈΠ΅ΡΡ Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ Ρ€Π°Π·ΠΎΠΌΠΊΠ½ΡƒΡ‚Ρ‹Π΅, Π½ΠΎ это Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ строго Π»ΠΈΡ‡Π½ΠΎΠ΅ , Ρ‡Ρ‚ΠΎ ΠΈ ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ.

Π― дальшС Π±ΡƒΠ΄Ρƒ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎ Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ Ρ€Π°Π·ΠΎΠΌΠΊΠ½ΡƒΡ‚Ρ‹Π΅. ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ ΠΊ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Ρƒ AVR , ΠΎΡ‡Π΅Π½ΡŒ просто Π½Π° рисункС Π½ΠΈΠΆΠ΅ прСдставлСна схСма ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ. Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС, просто подсоСдиняСм ΠΎΠ΄ΠΈΠ½ ΠΊΠΎΠ½Π΅Ρ† ΠΊ Π½ΠΎΠΆΠΊΠ΅ МК, Π° Π²Ρ‚ΠΎΡ€ΠΎΠΉ Π²Ρ‹Π²ΠΎΠ΄ ΠΊ Π·Π΅ΠΌΠ»Π΅ Π»ΠΈΠ±ΠΎ ΠΊ ΠΏΠΈΡ‚Π°Π½ΠΈΡŽ.

НС Π·Π°Π±Ρ‹Π²Π°Π΅ΠΌ Π·Π°Π΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ ΠΏΠΎΠ΄Ρ‚ΡΠ³ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ рСзистор для ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΏΠΎΠΌΠ΅Ρ… ΠΎΡ‚ Π½Π°Π²ΠΎΠ΄ΠΎΠΊ, Π΄Π°ΠΆΠ΅ Ρ‚Π΅ΠΌ ΠΆΠ΅ ΠΏΠ°Π»ΡŒΡ†Π΅ΠΌ. ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ настраиваСм ΠΏΠΎΡ€Ρ‚ ΠΊΠ°ΠΊ Π²Ρ…ΠΎΠ΄ Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ рСгистр DDRx выставляСм Π² 0, Π΄Π°Π»Π΅Π΅ подтягиваСм Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠ΅ рСзисторы, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ выставляСт рСгистр PORTx Π²1. Π”Π°Π½Π½Ρ‹ΠΉ ΠΊΠΎΠ΄ прСдставляСт ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ опроса Π΄Π²ΡƒΡ… ΠΊΠ½ΠΎΠΏΠΎΠΊ. Алгоритм ΠΌΠΎΠΆΠ΅Ρ‚ ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ ΠΊΠ°ΠΊ ΠΏΠΎΠΆΠ΅Π»Π°Π΅Ρ‚ фантазия. Но самоС Π³Π»Π°Π²Π½ΠΎΠ΅ Ρ‡Ρ‚ΠΎ Π² ΠΊΠΎΠ΄Π΅ опроса Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π°Π½Ρ‚ΠΈΠ΄Ρ€Π΅Π±Π΅Π·Π³ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄. Π§Ρ‚ΠΎ это? Π”Ρ€Π΅Π±Π΅Π·Π³ это явлСниС Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ Π² ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»ΡΡ…, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ прСдставляСт собой Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ случайныС ΠΌΠ½ΠΎΠ³ΠΎΠΊΡ€Π°Ρ‚Π½Ρ‹Π΅ Π½Π΅ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Π΅ замыкания ΠΈ размыкания ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ² ΠΈ длятся ΠΎΠ½ΠΈ ΠΎΡ‚ дСсятков Π΄ΠΎ сотСн миллисСкунд.

На рисункС Π½ΠΈΠΆΠ΅ Ρƒ нас ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π΄Ρ€Π΅Π±Π΅Π·Π³Π°. Π‘ΠΎΡ€ΡŽΡ‚ΡΡ двумя ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ, ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ для компСнсации Π΄Ρ€Π΅Π±Π΅Π·Π³Π° ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»ΠΈ с ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΉ связью, с характСристикой Π² Π²ΠΈΠ΄Π΅ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΎΠΉ ΠΏΠ΅Ρ‚Π»ΠΈ гистСрСзиса ΠΈ Ρ‚. Π’ ΠΊΠΎΠ΄Π΅ послС Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ, ΠΊΠΎΠ³Π΄Π° колСбания Π·Π°Ρ‚ΡƒΡ…Π»ΠΈ, ΠΎΠΏΡΡ‚ΡŒ сравниваСтся состояниС.

Π’ΠΎΡ‚ Ρ‚Π°ΠΊΠΈΠΌ Π½Π΅Ρ…ΠΈΡ‚Ρ€Ρ‹ΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ происходит опрос ΠΊΠ½ΠΎΠΏΠΎΠΊ. Π—Π΄Π΅ΡΡŒ Π½Π°ΠΌ Π½Π° ΠΏΠΎΠΌΠΎΡ‰ΡŒ приходят прСрывания, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΈΡ… ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ внСшнСС ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅. Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ Π΄Π°Ρ‚Π°ΡˆΠΈΡ‚. ΠŸΠΎΡ€Ρ‚ Ρ‚Π°ΠΊΠΆΠ΅ настраиваСм Π½Π° Π²Ρ…ΠΎΠ΄, подтягиваСм рСзистор. Π’ Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠΌ состоянии, ΠΊΠΎΠ³Π΄Π° ΠΊΠ½ΠΎΠΏΠΊΠ° Ρ€Π°Π·ΠΎΠΌΠΊΠ½ΡƒΡ‚Π° Π½Π° Π²Ρ‹Π²ΠΎΠ΄Π΅ присутствуСт 1. Π’ ΠΌΠΎΠΌΠ΅Π½Ρ‚ замыкания Π½Π° Π²Ρ‹Π²ΠΎΠ΄ ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚ 0, Π³Π΄Π΅ ΠΏΠΎ ΡΠΏΠ°Π΄Π°ΡŽΡ‰Π΅ΠΌΡƒ Ρ„Ρ€ΠΎΠ½Ρ‚Ρƒ настройка запускаСтся ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠΉ. ΠŸΡ€ΠΈ возникновСния прСрывания этот Ρ„Π»Π°Π³ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎ сбрасываСтся. Если ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Π΅ прСрывания Ρ‚ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ этот Ρ„Π»Π°Π³.

ΠŸΡ€ΠΈ Π²Ρ‹Ρ…ΠΎΠ΄Π΅ ΠΈΠ· ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ°Π½Π΄Ρƒ reti; , которая установит этот Ρ„Π»Π°Π³ Π² 1. НапримСр Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ считывания ΠΊΠ½ΠΎΠΏΠΎΠΊ Π½Π° АЦП Π±Ρ‹Π» описан способ считывания ΠΊΠ½ΠΎΠΏΠΎΠΊ Π² ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠΈ, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΡƒΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ АЦП. Π Π°Π·Ρ€Π΅ΡˆΠ°Π΅ΠΌ внСшниС ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅ INT0. По ΡΠΏΠ°Π΄Π°ΡŽΡ‰Π΅ΠΌΡƒ Ρ„Ρ€ΠΎΠ½Ρ‚Ρƒ.

Π Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΎΠ±Ρ‰Π΅Π³ΠΎ прСрывания. Π”ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ установлСн. Π’Π°ΠΊΠΆΠ΅ Π½Π°Π²Π΅Ρ€Π½ΠΎΠ΅ стоит ΡƒΠΏΠΎΠΌΡΠ½ΡƒΡ‚ΡŒ ΠΎ рСгистрС GIFR, Ρ„Π»Π°Π³ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠΉ. ΠšΠΎΠΌΡƒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ‡ΠΈΡ‚Π°Π΅ΠΌ Π΄Π°Ρ‚Π°ΡˆΠΈΡ‚. Бпособов использования ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠΉ для ΠΊΠ½ΠΎΠΏΠΎΠΊ ΠΊΡƒΡ‡Π°, поэтому Ρ‡ΠΈΡ‚Π°Π΅ΠΌ, подбираСм… На этом всС. ВсСм ΠΏΠΎΠΊΠ°. Π’ΠΎΡ‚ смотритС Π²Ρ‹ ΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΡ€ΠΎ опрос ΠΊΠ½ΠΎΠΏΠΎΠΊ Π² Ρ†ΠΈΠΊΠ»Π΅, я с Π²Π°ΠΌΠΈ согласСн.

Π― Ρ‚Π°ΠΊ Π΄Π΅Π»Π°Π» ΠΏΠΎΠ»ΡƒΡ‡Π°Π» Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΎΡ‚ΠΊΠ»ΠΈΠΊ Π½Π° Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ. НасчСт ввСдСния Π°Π½Ρ‚ΠΈΠ΄Ρ€Π΅Π±Π΅Π·Π³Π° Π½Π΅ знаю. ΠŸΡ€ΠΎΠ±ΠΎΠ²Π°Π» Π΄Π΅Π»Π°Π» с Π½ΠΈΠΌ ΠΈ Π±Π΅Π· Π½Π΅Π³ΠΎ Ρ€Π°Π·Π½ΠΈΡ†Ρ‹ я Π½Π΅ ΡƒΠ²ΠΈΠ΄Π΅Π».

Вопрос Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ. Как ΠΌΠΎΠ΄Π΅Ρ€Π½ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π² Ρ†ΠΈΠΊΠ»Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ пСрСмСнная ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Π»Π°ΡΡŒ быстрСС, Ссли Π΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ постоянно, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ врСмя Π΄Π΅Π»Π°ΠΉ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠΎΠΊΡ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ. И Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚, Ссли наТимаСшь ΠΊΠ½ΠΎΠΏΠΊΡƒ Ρ‡Π΅Ρ€Π΅Π· ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ врСмя, просто ΠΎΡ‚ΠΊΠ»ΠΈΠΊ Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅, врСмя delay ΠΎΠΏΡΡ‚ΡŒ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ значСния. Π― ΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Π» экспСримСнтировал с delay, Π½ΠΎ насколько я понял эта функция Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ записи числа. А измСняСмый Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ Π²ΠΏΠΈΡΠ°Ρ‚ΡŒ Π² Π½Π΅Π΅ нСльзя. Π― Π΄ΡƒΠΌΠ°ΡŽ Π² Ρ†ΠΈΠΊΠ»Π΅ оТидания отпускания ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ с Π΅Ρ‰Π΅ ΠΎΠ΄Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΎΠΉ, Ρ‡Ρ‚ΠΎ ΠΊΠ½ΠΎΠΏΠΊΠ° Π½Π°ΠΆΠ°Ρ‚Π° ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ врСмя Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ счСтчик ΠΈ Π²ΠΎΡ‚ Π’Π°ΠΌ Π±ΡƒΠ΄Π΅Ρ‚ быстроС ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ.

Π― нашСл ΠΎΠ΄Π½Ρƒ pbs28b, Π½ΠΎ ΠΎΠ½Π° Π²Π΅Π»ΠΈΠΊΠΎΠ²Π°Ρ‚Π°. Π£ Π½Π΅Π΅ Π΄ΠΈΠ°ΠΌΠ΅Ρ‚Ρ€ 22 ΠΌΠΌ. ΠœΠΎΠΆΠ΅Ρ‚ Π³Π΄Π΅ Ρ‚ΠΎ Π²Π°ΠΌ попадалось Ρ‡Ρ‚ΠΎ Ρ‚ΠΎ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ΅ Π½ΠΎ помСньшС.

Написал кусок ΠΊΠΎΠ΄Π° здСсь ΠΊΠ°ΠΊ Π±Ρ‹ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ другая Π·Π°Π΄Π°Ρ‡Π°, Π½ΡƒΠΆΠ½ΠΎ ΠΏΡ€ΠΈ ΠΎΡ‚ΠΆΠ°Ρ‚ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΈ Π·Π°Ρ€Π°Π½Π΅Π΅ Π²Ρ‹Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΈΠ· Ρ†ΠΈΠΊΠ»Π°. ΠŸΡ€ΠΈΠΌΠ΅Π½ΠΈΠ» ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ return, ΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Π» Ρ‚Π°ΠΊΠΆΠ΅ break Π½ΠΎ Π½ΠΈ с ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· Π½ΠΈΡ… Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚. ΠœΠΎΠΆΠ΅Ρ‚Π΅ Π±Π΅Π³Π»ΠΎ Π³Π»ΡΠ½ΡƒΡ‚ΡŒ Ρ‡Ρ‚ΠΎ Π½Π΅ Ρ‚Π°ΠΊ. Π₯отя Π²Ρ€ΠΎΠ΄Π΅ Π±Ρ‹ я разобрался с послСдним вопросом.

Надо Π²Ρ‹Ρ…ΠΎΠ΄ ΠΈΠ· Ρ†ΠΈΠΊΠ»Π° ΠΏΠΈΡΠ°Ρ‚ΡŒ break Π° ΠΏΠΎΡ‚ΠΎΠΌ Π΅Ρ‰Π΅ Π² самом ΠΊΠΎΠ½Ρ†Π΅ return это Π²Ρ‹Ρ…ΠΎΠ΄ ΠΈΠ· Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Π’Π°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚. Notify me of followup comments via e-mail.

Subscribe without commenting E-Mail:. ΠŸΠΎΠ΄ΠΏΠΈΡΠ°Ρ‚ΡŒΡΡ Π½Π° ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²Ρ‹Ρ… статСй Π½Π° ΠΏΠΎΡ‡Ρ‚Ρƒ:. ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Π½ΠΎ Ρ€Π°Π·. ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΊ AVR. Π•Ρ‰Π΅ Π±Ρ‹ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΠΊ Π² протСусС для наглядности. ЗдравствуйтС, Ссли Π·Π°Π΄Π°ΠΌ нСсколько вопросов ΠΏΠΎ ΠΊΠ½ΠΎΠΏΠΊΠ°ΠΌ смоТСтС ΠΌΠ½Π΅ ΠΎΡ‚Π²Π΅Ρ‚ΠΈΡ‚ΡŒ. I did not expect this. This is a great story. Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ ΠžΡ‚ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΎΡ‚Π²Π΅Ρ‚ Π’Π°Ρˆ e-mail Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½.


ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ ΠΊΠ½ΠΎΠΏΠΊΡƒ ΠΊ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Ρƒ ATtiny2313, простая ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°

ΠšΠ½ΠΎΠΏΠΊΡƒ ΠΊ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Ρƒ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ двумя основными способами, с подтяТкой Π»ΠΈΠ½ΠΈΠΈ ΠΏΠΎΡ€Ρ‚Π° ΠΊ высокому логичСскому ΡƒΡ€ΠΎΠ²Π½ΡŽ ΠΈΠ»ΠΈ Π½ΠΈΠ·ΠΊΠΎΠΌΡƒ Ρ‡Π΅Ρ€Π΅Π· рСзистор, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ΅ Π½ΠΈΠΆΠ΅. Π― ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ, ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠ΅ ΠΏΠΎΠ΄Ρ‚ΡΠ³ΠΈΠ²Π°ΡŽΡ‰ΠΈΠ΅ рСзисторы Π½Π° Π²Ρ…ΠΎΠ΄Π°Ρ… PORTB, Π½ΠΎ ΠΌΠ½Π΅ Π΅Ρ‰Π΅ Π½Π΅ доводилось ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ Ρ‚Π°ΠΊΠΎΠΉ способ. Π’ ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠ΅ΠΌ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π΅ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ всС врСмя ΠΎΠΏΡ€Π°ΡˆΠΈΠ²Π°Π΅Ρ‚ ΠΎΠ΄Π½Ρƒ ΠΈΠ»ΠΈ нСсколько ΠΊΠ½ΠΎΠΏΠΎΠΊ, ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… выполняСт ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΡƒΡŽ ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΈ снова возвращаСтся Π½Π° опрос ΠΊΠ½ΠΎΠΏΠΎΠΊ. ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ выполняСтся ΠΎΡ‡Π΅Π½ΡŒ быстро, СстСствСнно Π·Π° это врСмя ΠΌΠΎΠΆΠ½ΠΎ Π½Π΅ ΡƒΡΠΏΠ΅Ρ‚ΡŒ ΠΎΡ‚ΠΆΠ°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ, вслСдствиС Ρ‡Π΅Π³ΠΎ ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° выполнится ΠΌΠ½ΠΎΠ³ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎ. Π§Ρ‚ΠΎΠ±Ρ‹ этого Π½Π΅ происходило послС обнаруТСния Π½Π°ΠΆΠ°Ρ‚ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ ΠΎΡ‚ΠΆΠ°Ρ‚ΠΎΠ³ΠΎ состояния, Π½ΠΎ ΠΈ Π² этом случаС ΠΈΠ·-Π·Π° явлСния Π΄Ρ€Π΅Π±Π΅Π·Π³Π° ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ² Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°Ρ‡Π°Ρ‚ΡŒΡΡ Π΄ΠΎ отТатия ΠΊΠ½ΠΎΠΏΠΊΠΈ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ послС обнаруТСния Π½Π°ΠΆΠ°Ρ‚ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΡƒ Π² мс. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΎΡ‚ΠΆΠ°Ρ‚ΠΎΠ³ΠΎ состояния Π±ΡƒΠ΄Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ Ρ‡Π΅Ρ€Π΅Π· Π·Π°Π΄Π°Π½Π½Ρ‹ΠΉ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π» Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.

ΠœΠ΅Ρ‚ΠΎΠ΄ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊΠ½ΠΎΠΏΠΎΠΊ ΠΊ AVR. ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ Π΄Π°Π»Π΅Π΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ Π½Π΅Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Ρ€Π΅Π°Π³ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‚ΠΎ Ρ‚ΡƒΡ‚ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ опрос Π² цикличСскоС.

Π Π°Π±ΠΎΡ‚Π° с ΠΊΠ½ΠΎΠΏΠΊΠ°ΠΌΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ наТатия для ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° ATmega8

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ описан Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΈ ΠΊΠ½ΠΎΠΏΠΎΡ‡Π½ΠΎΠΉ ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹ ΠΊ 6-ΠΈ линиям ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° AVR. Бпособ Π½Π΅ Π½ΠΎΠ², ΠΏΠΎ этому Π² ΠΈΠ·Π»ΠΈΡˆΠ½ΠΈΡ… коммСнтариях Π½Π΅ нуТдаСтся. Π‘Ρ…Π΅ΠΌΠ° ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹ ΠΊ МК прСдставлСна Π½Π° рисункС Π½ΠΈΠΆΠ΅. Если для ΠΊΠΎΠ³ΠΎ-Ρ‚ΠΎ схСма с ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ Ρ€Π°Π·Π° покаТСтся Π½Π΅ Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎΠΉ, Ρ‚ΠΎ нарисуйтС Π½Π° листС Π±ΡƒΠΌΠ°Π³ΠΈ 6 Ρ‚ΠΎΡ‡Π΅ΠΊ Π² Π²ΠΈΠ΄Π΅ ΡˆΠ΅ΡΡ‚ΠΈΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠ° ΠΈ ΠΊΠ°ΠΆΠ΄Ρ‹Π΅ Π΄Π²Π΅ Ρ‚ΠΎΡ‡ΠΊΠΈ соСдинитС ΠΌΠ΅ΠΆΠ΄Ρƒ собой Π»ΠΈΠ½ΠΈΠ΅ΠΉ. Π’ ΠΈΡ‚ΠΎΠ³Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ Ρ€ΠΎΠ²Π½ΠΎ 15 Π»ΠΈΠ½ΠΈΠΉ. Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π² Ρ€Π°Π·Ρ€Ρ‹Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π»ΠΈΠ½ΠΈΠΈ Π²ΡΡ‚Π°Π²ΡŒΡ‚Π΅ ΠΊΠ½ΠΎΠΏΠΊΡƒ. ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡΡ ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π° Π½Π° 15 ΠΊΠ½ΠΎΠΏΠΎΠΊ с ΡˆΠ΅ΡΡ‚ΡŒΡŽ линиями Π²Π²ΠΎΠ΄Π°-Π²Ρ‹Π²ΠΎΠ΄Π° Ρ‚ΠΎΡ‡ΠΊΠ°ΠΌΠΈ.

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΊ AVR. Π¨Π°Π³ β„–12

Π­Ρ‚ΠΎΡ‚ скСтч ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚, ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½ Π²Ρ‹Π²ΠΎΠ΄ ΠΏΠΎΡ€Ρ‚Π° ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° AVR , Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΄Π΅Ρ‚Π΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΈΠΏΠΈΡ‡Π½Ρ‹Π΅ события Π½Π° ΠΊΠ½ΠΎΠΏΠΊΠ΅, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΠΎΠ΄ΠΈΠ½ΠΎΡ‡Π½ΠΎΠ΅ Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ single click , Π΄Π²ΠΎΠΉΠ½ΠΎΠ΅ Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ double click ΠΈ Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ long press. Π­Ρ‚ΠΎΡ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π» позволяСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ΄Π½Ρƒ ΠΈ Ρ‚Ρƒ ΠΆΠ΅ ΠΊΠ½ΠΎΠΏΠΊΡƒ для Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ с нСбольшими Π·Π°Ρ‚Ρ€Π°Ρ‚Π°ΠΌΠΈ Π½Π° Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚ΡƒΡ€Ρƒ — особСнно ΡƒΠ΄ΠΎΠ±Π½ΠΎ Π² случаС примСнСния ΠΏΠΎΠ²ΠΎΡ€ΠΎΡ‚Π½ΠΎΠ³ΠΎ энкодСра rotary encoder, jog-shuttle с ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ. ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: здСсь ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ ΡΡ‚Π°Ρ‚ΡŒΠΈ [1], исходный ΠΊΠΎΠ΄ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Ρ‡Π°Ρ‚ΡŒ ΠΏΠΎ ссылкС [2] с использованиСм систСм GIT ΠΈΠ»ΠΈ SVN, Π»ΠΈΠ±ΠΎ просто Π² Π²ΠΈΠ΄Π΅ Π°Ρ€Ρ…ΠΈΠ²Π° OneButton-master. ΠΠ°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π² систСмС Arduino ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Ρ€Π°ΡΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ простой ΠΎΠ±ΡƒΡ‡Π°ΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ опроса ΠΊΠ½ΠΎΠΏΠΊΠΈ Button tutorial , Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΊΠ°ΠΊ Π½ΡƒΠΆΠ½ΠΎ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ состояниС ΠΊΠ½ΠΎΠΏΠΊΠΈ, ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Debounce, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, ΠΊΠ°ΠΊ Π½ΡƒΠΆΠ½ΠΎ ΠΎΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ сигнал ΠΊΠ½ΠΎΠΏΠΊΠΈ, устраняя Π»ΠΎΠΆΠ½Ρ‹Π΅ срабатывания ΠΎΡ‚ ΠΈΠΌΠΏΡƒΠ»ΡŒΡΠΎΠ² Π΄Ρ€Π΅Π±Π΅Π·Π³Π° ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ².

Описан простой экспСримСнт с ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΊ AVR ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Ρƒ, Ρ€Π°Π·ΠΎΠ±Ρ€Π°Π½Π° Π½Π΅ слоТная ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π½Π° языкС Π‘ΠΈ для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΈ. РазбСрСмся с особСнностями ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΊ ΠΏΠΎΡ€Ρ‚Π°ΠΌ МК, Π° Ρ‚Π°ΠΊΠΆΠ΅ с ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ считывания состояний ΠΊΠ½ΠΎΠΏΠΊΠΈ Π½Π° языкС Π‘ΠΈ.

Как ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΡƒΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ Π² МК AVR?

БСгодня ΠΌΡ‹ Ρ€Π°ΡΡˆΠΈΡ€ΠΈΠΌ свой ΠΊΡ€ΡƒΠ³ΠΎΠ·ΠΎΡ€ ΠΏΠΎ ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΡŽ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΠΎΡ€Ρ‚ΠΎΠ² ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° ΠΈ ΠΈΠ·ΡƒΡ‡ΠΈΠΌ Π²Ρ‚ΠΎΡ€ΠΎΠ΅ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎΡ€Ρ‚Π° β€” Ρ€Π°Π±ΠΎΡ‚Ρƒ Π½Π° Π²Ρ…ΠΎΠ΄. И для изучСния Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π° Π²Ρ…ΠΎΠ΄ ΠΌΡ‹ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌ ΠΎΠ±Ρ‹Ρ‡Π½ΡƒΡŽ Ρ‚Π°ΠΊΡ‚ΠΎΠ²ΡƒΡŽ ΠΊΠ½ΠΎΠΏΠΊΡƒ. Как всСгда, создадим ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π² Atmel Studio, Π²Ρ‹Π±Π΅Ρ€Π΅ΠΌ Atmega8A, Π½Π°Π·ΠΎΠ²Π΅ΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Test04 ΠΈ ΠΊΠΎΠ΄ Ρ‚Π°ΠΊΠΆΠ΅ Π² main. Π’ качСствС ΠΏΠΎΠ΄ΠΎΠΏΡ‹Ρ‚Π½ΠΎΠ³ΠΎ ΠΏΠΎΡ€Ρ‚Π° Π΄Π°Π²Π°ΠΉΡ‚Π΅ Π²ΠΎΠ·ΡŒΠΌΡ‘ΠΌ ΠΏΠΎΡ€Ρ‚ B. МоТно с успСхом ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ любой ΠΏΠΎΡ€Ρ‚.

ΠžΠΏΡ€ΠΎΡ ΠΊΠ½ΠΎΠΏΠΎΠΊ Π½Π° ассСмблСрС

ΠŸΠΎΠ»Π½Ρ‹ΠΉ тСкст ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ модуля keyboard. ΠžΠΏΡ€ΠΎΡ ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹ CodeVision. ΠžΠΏΡ€ΠΎΡ ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹ Proteus β€” ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ Π”Ρ€Π°ΠΉΠ²Π΅Ρ€ для ΠΌΠ°Ρ‚Ρ€ΠΈΡ‡Π½ΠΎΠΉ ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹. Π£Ρ‡Π΅Π±Π½Ρ‹ΠΉ курс. ΠžΠΏΡ€ΠΎΡ ΠΌΠ°Ρ‚Ρ€ΠΈΡ‡Π½ΠΎΠΉ ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹. Они настроСны Π½Π° Π²Ρ‹Ρ…ΠΎΠ΄ ΠΈ Π² Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΌ состоянии Π½Π° этих Π²Ρ‹Π²ΠΎΠ΄Π°Ρ… напряТСниС логичСского нуля.

Π’ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, Π΄Π°Π²Π°ΠΉΡ‚Π΅ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ наТатия ΠΊΠ½ΠΎΠΏΠΊΠΈ осущСствим ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ² AVR (ΠΈ ATtiny13 — Π½Π΅ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅) ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚Ρ€ΠΈ области памяти. .. Бтандартная ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° опроса ΠΊΠ½ΠΎΠΏΠΊΠΈ.

ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹ Π°Π½Π°Π»ΠΈΠ·Π° наТатия стандартных ΠΊΠ½ΠΎΠΏΠΎΠΊ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° AVR MEGA128

Π₯Π°Π±Ρ€ Geektimes ВостСр Мой ΠΊΡ€ΡƒΠ³ Ѐрилансим. MaxEpt MaxEpt. ВсСм ΠΏΡ€ΠΈΠ²Π΅Ρ‚! Набросал нСбольшой ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ ΠΈ ΡƒΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΏΠΎ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Ρƒ.

Easyelectronics.ru

Π’Π˜Π”Π•Πž ПО Π’Π•ΠœΠ•: Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° опроса ΠΊΠ½ΠΎΠΏΠΎΠΊ Π½Π° C++ AVR GCC

НовыС ΠΊΠ½ΠΈΠ³ΠΈ ШпионскиС ΡˆΡ‚ΡƒΡ‡ΠΊΠΈ: НовоС ΠΈ Π»ΡƒΡ‡ΡˆΠ΅Π΅ схСм для Ρ€Π°Π΄ΠΈΠΎΠ»ΡŽΠ±ΠΈΡ‚Π΅Π»Π΅ΠΉ: ШпионскиС ΡˆΡ‚ΡƒΡ‡ΠΊΠΈ ΠΈ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ 2-Π΅ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ Arduino для ΠΈΠ·ΠΎΠ±Ρ€Π΅Ρ‚Π°Ρ‚Π΅Π»Π΅ΠΉ. ΠžΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ элСктроникС Π½Π° 10 Π·Π°Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ… ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΈΡ€ΡƒΠ΅ΠΌ Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ². Руководство для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… ΠšΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ Π² Π»Π°Π±ΠΎΡ€Π°Ρ‚ΠΎΡ€ΠΈΠΈ Ρ€Π°Π΄ΠΈΠΎΠ»ΡŽΠ±ΠΈΡ‚Π΅Π»Ρ Радиоконструктор 3 ΠΈ 4 ШпионскиС ΡˆΡ‚ΡƒΡ‡ΠΊΠΈ ΠΈ Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ Π½ΠΈΡ…. Π‘Π±ΠΎΡ€Π½ΠΈΠΊ 19 ΠΊΠ½ΠΈΠ³ Π—Π°Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½Π°Ρ элСктроника ΠΈ элСктротСхника для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… ΠΈ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Arduino для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…: самый простой ΠΏΠΎΡˆΠ°Π³ΠΎΠ²Ρ‹ΠΉ ΡΠ°ΠΌΠΎΡƒΡ‡ΠΈΡ‚Π΅Π»ΡŒ Радиоконструктор 1

Π Π°Π΄ снова ΠΏΡ€ΠΈΠ²Π΅Ρ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ постоянных Ρ‡ΠΈΡ‚Π°Ρ‚Π΅Π»Π΅ΠΉ, ΠΎΠΆΠΈΠ΄Π°ΡŽΡ‰ΠΈΡ… Ρ‡Π΅Π³ΠΎ-Ρ‚ΠΎ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΈ интСрСсного.

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΊ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Ρƒ

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΊ AVR Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Ρƒ вас Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ Π½ΠΈΠΊΠ°ΠΊΠΈΡ… трудностСй. Π’ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΉ ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ ΠΏΡ€ΠΎΠ²Π΅Π»ΠΈ ΡΠΌΡƒΠ»ΡΡ†ΠΈΡŽ схСмы Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Proteus, ΠΏΠΎΠΌΠΈΠ³Π°Π»ΠΈ свСтодиодом ΠΈ Π½Π°ΡƒΡ‡ΠΈΠ»ΠΈΡΡŒ ΠΏΡ€ΠΎΡˆΠΈΠ²Π°Ρ‚ΡŒ наш Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€. Π”Π°, разумССтся, это Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ. РСализуСтся довольно Π»Π΅Π³ΠΊΠΎ. ΠŸΡ€ΠΈΡ‡Π΅ΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΡΡΠΌΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ ΠΊΠ°ΠΊ с фиксациСй Ρ‚Π°ΠΊ ΠΈ Π±Π΅Π· фиксации.

AVR Π£Ρ€ΠΎΠΊ 7. Кнопка

На ΠΏΠ΅Ρ€Π²ΠΎΠΌ ΡƒΡ€ΠΎΠΊΠ΅ ΠΌΡ‹ Π½Π°ΡƒΡ‡ΠΈΠ»ΠΈΡΡŒ ΠΏΠΎΠ΄Π°Π²Π°Ρ‚ΡŒ напряТСниС Π½ΠΎΠΆΠΊΠΎΠΉ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°. Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π½ΡƒΠΆΠ½ΠΎ Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠΌ Π±Π΅Π· ΠΏΠ΅Ρ€Π΅ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ. Π—Π°Ρ‡Π΅ΠΌ это Π½ΡƒΠΆΠ½ΠΎ?


nRF905 Π Π°Π΄ΠΈΠΎΠ±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° для AVR ΠΈ Arduino

nRF905 β€” это микросхСма Ρ€Π°Π΄ΠΈΠΎΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠ°, похоТая Π½Π° Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΈΠ·Π²Π΅ΡΡ‚Π½ΡƒΡŽ nRF24L01, Π½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰Π°Ρ Π½Π° частотах 433/898/915 ΠœΠ“Ρ† вмСсто 2,4 Π“Π“Ρ†, ΠΈΠΌΠ΅ΡŽΡ‰Π°Ρ Π³ΠΎΡ€Π°Π·Π΄ΠΎ больший радиус дСйствия ΠΈ нСсколько Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ² Π²Π²ΠΎΠ΄Π°-Π²Ρ‹Π²ΠΎΠ΄Π°. Однако ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄Π°Π½Π½Ρ‹Ρ… nRF905 составляСт всСго 50 ΠšΠ±ΠΈΡ‚/с ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с 2 ΠœΠ±ΠΈΡ‚/с Ρƒ nRF24L01.

Π­Ρ‚Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π³ΠΈΠ±ΠΊΠΎΡΡ‚ΡŒ: ΠΠ΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ использованиС ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠΉ, 2 соСдинСния с ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΌ ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΈΡ… состояния Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ доступны ΠΈΠ· рСгистра состояния IC, ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π±Π°Π·ΠΎΠ²ΠΎΠ΅ ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ»Π»ΠΈΠ·ΠΈΠΉ.

ΠŸΠ Π˜ΠœΠ•Π§ΠΠΠ˜Π•. ВСрсия 3.0.0 Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Π±Ρ‹Π»Π° Π²Ρ‹ΠΏΡƒΡ‰Π΅Π½Π° 12 сСнтября 2017 Π³., ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ CD ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ измСнился, ΠΈ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ AM.

Π‘ΠΊΠ°Ρ‡Π°Ρ‚ΡŒ

Arduino: [Π—Π”Π•Π‘Π¬] ΠΈ [ДокумСнтация] (ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ Arduino ΠΈ Π²Π²Π΅Π΄ΠΈΡ‚Π΅ Β«nrf905Β»)
AVR (Π½Π΅-Arduino): [Π—Π”Π•Π‘Π¬] ΠΈ [ДокумСнтация]

Π½Π Π€905 ATmega48/88/168/328 Ардуино Π£Π½ΠΎ ОписаниС
Π’ΠšΠ¦ 3,3 Π’ 3,3 Π’ ΠŸΠΈΡ‚Π°Π½ΠΈΠ΅ (3,3 Π’)
Π‘Π• Π”7 (13) 7 Π Π΅ΠΆΠΈΠΌ оТидания β€” Высокий = Ρ€Π΅ΠΆΠΈΠΌ TX/RX, Низкий = Ρ€Π΅ΠΆΠΈΠΌ оТидания
Π’Π₯Π­ Π’1 (15) 9 Π Π΅ΠΆΠΈΠΌ TX ΠΈΠ»ΠΈ RX – Высокий = TX, Низкий = RX
ΠŸΠ’Π  Π’0 (14) 8 Π’ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ питания – Высокий = Π²ΠΊΠ». , Низкий = Π²Ρ‹ΠΊΠ».
CD Π”4 (6) 4 ΠžΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ нСсущСй β€” Высокий ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ ΠΏΡ€ΠΈ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΈΠΈ сигнала для прСдотвращСния столкновСний
AM Π”2 (4) 2 Address Match β€” высокий ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ ΠΏΡ€ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚Π° с Ρ‚Π°ΠΊΠΈΠΌ ΠΆΠ΅ адрСсом
ΠΊΠ°ΠΊ ΠΎΠ΄ΠΈΠ½, установлСнный для этого устройства, Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ состояниС хранится Π² рСгистрС, Ссли ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ прСрывания
(ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ), Ρ‚ΠΎΠ³Π΄Π° этот Π²Ρ‹Π²ΠΎΠ΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½.
Π”Π  Π”3 (5) 3 Data Ready β€” Высокий ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ ΠΏΡ€ΠΈ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ/Высокий ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ ΠΏΡ€ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠΈ Π½ΠΎΠ²Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…
, Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ состояниС сохраняСтся Π² рСгистрС, Ссли ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ прСрывания
(ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ), Ρ‚ΠΎΠ³Π΄Π° этот Π²Ρ‹Π²ΠΎΠ΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½.
БО Π’4 (18) 12 SPI MISO (ΠΌΠ΅Π³Π° ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ 50)
БИ Π’3 (17) 11 SPI MOSI (ΠΌΠ΅Π³Π° ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ 51)
БКК Π’5 (19) 13 SPI SCK (Mega pin 52)
ДНБ Π’2 (16) 10 ΠΠ΅Ρ€ΠΆΠ°Π²Π΅ΡŽΡ‰Π°Ρ ΡΡ‚Π°Π»ΡŒ SPI
ЗСмля Π—Π•ΠœΠ›Π― Π—Π•ΠœΠ›Π― Π—Π°Π·Π΅ΠΌΠ»Π΅Π½ΠΈΠ΅

Названия Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ² модуля ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ ΠΎΡ‚ Π½Π°Π·Π²Π°Π½ΠΈΠΉ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ² микросхСмы Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Π΄Π°Π½Π½Ρ‹Ρ…:

ΠœΠΎΠ΄ΡƒΠ»ΡŒ ИЦ
Π‘Π• TRX_EN
Π’Π₯Π­ Π’Π₯_EN

nRF905 Π½Π΅ совмСстим с напряТСниСм 5 Π’, поэтому Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ прСобразования ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ с Π²Ρ‹Ρ…ΠΎΠ΄Π°ΠΌΠΈ Arduino. ΠŸΡ€ΠΎΡΡ‚ΠΎΠΉ Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ напряТСния ΠΈΠ»ΠΈ рСзистор ΠΈ стабилитрон ΡΠ΄Π΅Π»Π°ΡŽΡ‚ своС Π΄Π΅Π»ΠΎ. Волько Π²Ρ‹Π²ΠΎΠ΄Ρ‹ TXE, CE, PWR, SI, SCK ΠΈ CSN Π½ΡƒΠΆΠ΄Π°ΡŽΡ‚ΡΡ Π² ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠΈ уровня (Π½Π΅ CD, AM, DR ΠΈ SO).

Π Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ Π—Π΅Π½Π΅Ρ€

nRF905 ΠΈΠΌΠ΅Π΅Ρ‚ 511 ΠΊΠ°Π½Π°Π»ΠΎΠ² Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ 422,4–473,5 ΠœΠ“Ρ† с шагом 100 ΠΊΠ“Ρ† Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ 433 ΠœΠ“Ρ† ΠΈ 844,8–947 ΠœΠ“Ρ† с шагом 200 ΠΊΠ“Ρ† Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ 868/915 ΠœΠ“Ρ† (Π½Π΅ Π·Π°Π±ΡƒΠ΄ΡŒΡ‚Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, ΠΊΠ°ΠΊΠΈΠ΅ частоты Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½Ρ‹ Π² вашСй странС! ), Π½ΠΎ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΊΠ°Π½Π°Π» ΠΏΠ΅Ρ€Π΅ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ сосСдниС ΠΊΠ°Π½Π°Π»Ρ‹, поэтому ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ 170 ΠΊΠ°Π½Π°Π»ΠΎΠ².

Поиск nRF905, PTR8000 ΠΈ PTR8000+ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π΄Π°Ρ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ для ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ Π½Π° AliExpress, Ebay ΠΈ DealExtreme. Π’Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Π² состоянии ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ 2 ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Π·Π° 10 Ρ„ΡƒΠ½Ρ‚ΠΎΠ² стСрлингов.

ΠžΠ±Ρ€Π°Ρ‚Π½Ρ‹Π΅ Π²Ρ‹Π·ΠΎΠ²Ρ‹

Начиная с вСрсии 3.0.0 эта Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹Π΅ Π²Ρ‹Π·ΠΎΠ²Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π·Π°ΠΏΡƒΡΠΊΠ°ΡŽΡ‚ΡΡ ΠΏΡ€ΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠΈ событий. Если опция использования ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠΉ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π°, Ρ‚ΠΎ ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹Π΅ Π²Ρ‹Π·ΠΎΠ²Ρ‹ Π±ΡƒΠ΄ΡƒΡ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ ΠΈΠ· ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ прСрывания, поэтому ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Π»ΡŽΠ±Ρ‹Π΅ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Π² Π½ΠΈΡ…, ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Ρ‹ Β«ΠΈΠ·ΠΌΠ΅Π½Ρ‡ΠΈΠ²Ρ‹ΠΌΠΈΒ», ΠΊΠ°ΠΊ Ссли Π±Ρ‹ Π²Ρ‹ ΠΈΠΌΠ΅Π»ΠΈ Π΄Π΅Π»ΠΎ с ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΌΠΈ ISR. Π­Ρ‚ΠΈ события разбудят ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€, Ссли ΠΎΠ½ спит.

Π‘ΠΎΠ±Ρ‹Ρ‚ΠΈΠ΅ ΠžΠ±Ρ€Π°Ρ‚Π½Ρ‹ΠΉ Π²Ρ‹Π·ΠΎΠ² ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΡ
Входящий Π½ΠΎΠ²Ρ‹ΠΉ ΠΏΠ°ΠΊΠ΅Ρ‚ NRF905_CB_ADDRMATCH Β 
ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠ°ΠΊΠ΅Ρ‚ NRF905_CB_RXCOMPLETE Β 
ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ Π½Π΅Π²Π΅Ρ€Π½Ρ‹ΠΉ ΠΏΠ°ΠΊΠ΅Ρ‚ NRF905_CB_RXINVALID Β 
ΠŸΠ°ΠΊΠ΅Ρ‚Π½Π°Ρ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½Π° NRF905_CB_TXCOMPLETE Π­Ρ‚ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ссли nextMode Ρ€Π°Π²Π΅Π½ NRF905_NEXTMODE_STANDBY ΠΏΡ€ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ nRF905_TX()

МСлкиС Ρ€Π°Π΄ΠΈΠΎΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Ρ‹

ЀактичСская ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄Π°Π½Π½Ρ‹Ρ… Π² эфирС nRF905 составляСт 100 ΠšΠ±ΠΈΡ‚/с, Π½ΠΎ Π΄Π°Π½Π½Ρ‹Π΅ ΠΊΠΎΠ΄ΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π² манчСстСрском ΠΊΠΎΠ΄Π΅, Ρ‡Ρ‚ΠΎ Π²Π΄Π²ΠΎΠ΅ сниТаСт ΠΏΡ€ΠΎΠΏΡƒΡΠΊΠ½ΡƒΡŽ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒ Π΄ΠΎ 50 ΠšΠ±ΠΈΡ‚/с. ΠœΠΎΠ΄ΡƒΠ»ΡΡ†ΠΈΡ GFSK с Π΄Π΅Π²ΠΈΠ°Ρ†ΠΈΠ΅ΠΉ Β±50 ΠΊΠ“Ρ†. Π Π°Π΄ΠΈΠΎ Ρ‚Π°ΠΊΠΆΠ΅ добавляСт нСсколько Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π±ΠΈΡ‚ΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… ΠΊ адрСсу ΠΈ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠ΅; ΠΏΡ€Π΅Π°ΠΌΠ±ΡƒΠ»Π° ΠΈ CRC.

ΠŸΠ΅Ρ€Π΅Π΄Π°Π½Π½Ρ‹ΠΉ ΠΏΠ°ΠΊΠ΅Ρ‚

ΠŸΡ€Π΅Π°ΠΌΠ±ΡƒΠ»Π°
10 Π±ΠΈΡ‚
АдрСс
1 ΠΈΠ»ΠΈ 4 Π±Π°ΠΉΡ‚Π°
ПолСзная Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠ°
1–32 Π±Π°ΠΉΡ‚Π°
CRC
0–2 Π±Π°ΠΉΡ‚Π°

АдрСс Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² качСствС синхрослова ΠΈ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ большС сдвигов уровня. 10100110 01100101 00011010 11011010 (2791643866) Π±ΡƒΠ΄Π΅Ρ‚ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΌ адрСсом для использования, Π½ΠΎ 00000000 00000000 00000000 0010000 (32) Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚.

CRC ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для обнаруТСния ошибок Π² ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…. НаличиС CRC Π½Π΅ устраняСт всС ΠΏΠ»ΠΎΡ…ΠΈΠ΅ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹, всСгда Π΅ΡΡ‚ΡŒ нСбольшая Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΏΠ»ΠΎΡ…ΠΎΠΉ ΠΏΠ°ΠΊΠ΅Ρ‚ ΠΏΡ€ΠΎΠΉΠ΄Π΅Ρ‚ CRC. ИспользованиС Π±ΠΎΠ»ΡŒΡˆΠΈΡ… CRC ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ этот шанс.
Когда CRC установлСн Π½Π° 16 Π±ΠΈΡ‚, Ρ€Π°Π΄ΠΈΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ CRC16-CCITT-FALSE (0xFFFF). Π― Π½Π΅ ΡƒΠ²Π΅Ρ€Π΅Π½, Ρ‡Ρ‚ΠΎ ΠΎΠ½ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ для 8-Π±ΠΈΡ‚Π½Ρ‹Ρ… CRC.

ВрСмя ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ
Π Π°Π·ΠΌΠ΅Ρ€Ρ‹ адрСса, ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΈ CRC ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ для баланса ΠΌΠ΅ΠΆΠ΄Ρƒ пропускной ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒΡŽ ΠΈ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΉ

Π Π°Π·ΠΌΠ΅Ρ€ адрСса Π Π°Π·ΠΌΠ΅Ρ€ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ CRC Ρ€Π°Π·ΠΌΠ΅Ρ€ = ΠŸΡ€ΠΎΠΏΡƒΡΠΊΠ½Π°Ρ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒ (Π±ΠΈΡ‚/с) Π—Π°Π΄Π΅Ρ€ΠΆΠΊΠ° (мс)
4 32 2 = 36940 6,93
1 4 1 = 17680 1,81
1 1 0 = 6838 1,17

ΠŸΡ€ΠΎΠΏΡƒΡΠΊΠ½Π°Ρ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒ β€” это количСство ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ‚ΠΏΡ€Π°Π²Π»Π΅Π½ΠΎ (Ρ‡Π°ΡΡ‚ΡŒ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ), ΠΏΡ€ΠΈ условии отсутствия Π·Π°Π΄Π΅Ρ€ΠΆΠ΅ΠΊ для записи ΠΈ чтСния ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ.
Π—Π°Π΄Π΅Ρ€ΠΆΠΊΠ° β€” это врСмя, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠ΅ для Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ.
ΠŸΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΈΠ· Ρ€Π΅ΠΆΠΈΠΌΠ° оТидания Π² Ρ€Π΅ΠΆΠΈΠΌ ΠΏΡ€ΠΈΠ΅ΠΌΠ° ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ Π½Π΅ Π±ΠΎΠ»Π΅Π΅ 650 мкс, Π° ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π΅ΠΆΠΈΠΌΠ°ΠΌΠΈ ΠΏΡ€ΠΈΠ΅ΠΌΠ° ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ β€” Π½Π΅ Π±ΠΎΠ»Π΅Π΅ 550 мкс.

ВрСмя ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°ΡΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ:

t = t запуск + t ΠΏΡ€Π΅Π°ΠΌΠ±ΡƒΠ»Π° + ((N адрСс + N полСзная Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠ° + N CRC ) / BR)

t запуск врСмя ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Ρ€Π΅ΠΆΠΈΠΌΠ°, ΠΊΠ°ΠΊ ΡƒΠΊΠ°Π·Π°Π½ΠΎ Π²Ρ‹ΡˆΠ΅ (650 мкс / 550 мкс).
t ΠΏΡ€Π΅Π°ΠΌΠ±ΡƒΠ»Π° составляСт 200 мкс для 10-Π±ΠΈΡ‚Π½ΠΎΠΉ ΠΏΡ€Π΅Π°ΠΌΠ±ΡƒΠ»Ρ‹.
N адрСс , N полСзная Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΈ N CRC — это адрСс, полСзная Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρ‹ CRC Π² Π±ΠΈΡ‚Π°Ρ….
BR β€” это Π±ΠΈΡ‚Ρ€Π΅ΠΉΡ‚, Ρ€Π°Π²Π½Ρ‹ΠΉ 50 000.

Для ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ 1, ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΈΠ· Ρ€Π΅ΠΆΠΈΠΌΠ° оТидания Π² Ρ€Π΅ΠΆΠΈΠΌ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ:

t = 0,00065 + 0,0002 + ((32 + 256 + 16) / 50000)
t = 0,00693 сСкунды (6,93 мс)

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ²: Π΄ΠΎ вСрсии 3. 0.0 эта Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π·Π°Π³Ρ€ΡƒΠΆΠ°Π»Π° Π±Π°ΠΉΡ‚Ρ‹ адрСса Π² ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΌ порядкС, ΠΈΠΌΠ΅ΠΉΡ‚Π΅ это Π² Π²ΠΈΠ΄Ρƒ, Ссли Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ ΡΡ‚Π°Ρ€ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ для интСрфСйса. с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ радиосистСмами!

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ AVR 04: НаписаниС ΠΊΠΎΠ΄Π° ΠΈ Ρ‚. Π΄.

Π”ΠΎΠ±Ρ€ΠΎ ΠΏΠΎΠΆΠ°Π»ΠΎΠ²Π°Ρ‚ΡŒ Π² Ρ‡Π΅Ρ‚Π²Π΅Ρ€Ρ‚ΡƒΡŽ ΠΈ послСднюю Ρ‡Π°ΡΡ‚ΡŒ сСрии. ΠŸΠ΅Ρ€Π²Ρ‹Ρ… Ρ‚Ρ€Π΅Ρ… частСй Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ достаточно, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠ΄Π²ΠΈΠ½ΡƒΡ‚ΡŒ вас с ΠΌΠ΅Ρ€Ρ‚Π²ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ, Π½ΠΎ Π΅Ρ‰Π΅ нСсколько ΠΎΠ±ΡƒΡ‡Π°ΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² Π½Π΅ ΠΏΠΎΠΌΠ΅ΡˆΠ°ΡŽΡ‚. Π­Ρ‚ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠ΅Π΅ врСмя, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±ΡΡƒΠ΄ΠΈΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π²Π΅Ρ‰ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π΄Π΅Π»Π°Ρ‚ΡŒ эти малСнькиС Ρ‡ΠΈΠΏΡ‹. ΠŸΡ€ΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΡΠΉΡ‚Π΅ΡΡŒ ΠΊΠΎ ΠΌΠ½Π΅ послС ΠΏΠ΅Ρ€Π΅Ρ€Ρ‹Π²Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹:

  • Π Π°ΡΡˆΠΈΡ€ΡŒΡ‚Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΠ΄Π°, Π΄ΠΎΠ±Π°Π²ΠΈΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π² Π½Π°ΡˆΡƒ ΠΏΡ€ΠΎΡΡ‚ΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, ΠΏΠΎΠΊΠ° я ΠΏΡ€Π΅Π΄Π»Π°Π³Π°ΡŽ Π²Π°ΠΌ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ.
  • ΠžΠ±ΡΡƒΠ΄ΠΈΡ‚Π΅ Π±ΠΈΡ‚Ρ‹ ΠΏΡ€Π΅Π΄ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚Π΅Π»Π΅ΠΉ AVR, ΠΊΠ°ΠΊ ΠΈΡ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ Π½Π° Ρ‡Ρ‚ΠΎ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅
  • ΠšΠΎΡΠ½ΠΈΡ‚Π΅ΡΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΠ΅Ρ€ΠΈΡ„Π΅Ρ€ΠΈΠΉΠ½Ρ‹Ρ… устройств, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ встрСтитС Π² этих Ρ‡ΠΈΠΏΠ°Ρ…

Π’ качСствС дополнСния ΠΊ сСрии я использовал ΠΏΡ€ΠΈΠΌΠ΅Ρ€ оборудования ΠΈΠ· этой послСднСй части для создания вСлосипСдного Π·Π°Π΄Π½Π΅Π³ΠΎ фонаря. НадСюсь, это Π²Π΄ΠΎΡ…Π½ΠΎΠ²ΠΈΡ‚ вас Π½Π° созданиС Ρ‡Π΅Π³ΠΎ-Ρ‚ΠΎ Π±ΠΎΠ»Π΅Π΅ ΡƒΠΌΠ½ΠΎΠ³ΠΎ.

ДороТная ΠΊΠ°Ρ€Ρ‚Π° сСрии:

  • ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ AVR 01: Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅
  • ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ AVR 02: АппаратноС обСспСчСниС
  • ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ AVR 03: Π§Ρ‚Π΅Π½ΠΈΠ΅ ΠΈ компиляция ΠΊΠΎΠ΄Π°
  • ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ AVR 04: Π—Π°ΠΏΠΈΡΡŒ ΠΊΠΎΠ΄Π°

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ оборудования

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΠ΄Π°, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ я Ρ€Π°Π±ΠΎΡ‚Π°Π» Π² послСдних Π΄Π²ΡƒΡ… частях этого руководства, Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ скучСн. Он заставляСт ΠΎΠ΄ΠΈΠ½ свСтодиод ΠΌΠΈΠ³Π°Ρ‚ΡŒ ΠΈ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ с частотой ΠΎΠΊΠΎΠ»ΠΎ 1 Π“Ρ†. Π­Ρ‚ΠΎΡ‚ свСтодиод Π±Ρ‹Π» ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ ΠΊ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρƒ PD0, поэтому Π΄Π°Π²Π°ΠΉΡ‚Π΅ Π½Π°Ρ‡Π½Π΅ΠΌ с добавлСния свСтодиода ΠΈ рСзистора ΠΊ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹ΠΌ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π°ΠΌ PORT D, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π² ΠΎΠ±Ρ‰Π΅ΠΉ слоТности ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ 8 свСтодиодов. ΠœΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒ ΠΎ Π²Ρ…ΠΎΠ΄Π°Ρ…, поэтому Π΄Π°Π²Π°ΠΉΡ‚Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»ΡŒ Π½Π° PC0. Π’ΠΎΡ‚ схСма, ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰Π°Ρ наши измСнСния:


Π― пСрСмСстил исходный свСтодиод Π½Π° ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠ΅ пространство с ΠΏΡ€Π°Π²ΠΎΠΉ стороны ΠΌΠ°ΠΊΠ΅Ρ‚Π½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ‹. Π― ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°ΡŽ ΠΊΠ°Ρ‚ΠΎΠ΄ ΠΊ Π·Π°Π·Π΅ΠΌΠ»ΡΡŽΡ‰Π΅ΠΉ шинС Π²Π½ΠΈΠ·Ρƒ, ΠΏΠ΅Ρ€Π΅ΠΌΡ‹ΠΊΠ°ΡŽ Ρ‚Ρ€Π°Π½ΡˆΠ΅ΡŽ рСзистором ΠΈ соСдиняю ΠΏΠ΅Ρ€Π΅ΠΌΡ‹Ρ‡ΠΊΠΎΠΉ этого рСзистора с ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π°ΠΌΠΈ ΠΏΠΎΡ€Ρ‚Π° D Π½Π° ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π΅. Π― располоТил свСтодиоды Π² порядкС возрастания справа Π½Π°Π»Π΅Π²ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒ ΠΈΡ… Π°Π΄Ρ€Π΅ΡΠ°Ρ†ΠΈΡŽ ΠΏΡ€ΠΈ написании ΠΊΠΎΠ΄Π°:

Если Π²Ρ‹ Π·Π½Π°Π΅Ρ‚Π΅ Ρ†Π²Π΅Ρ‚ΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹ своих рСзисторов, Π²Ρ‹ Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ ΠΊΠΎΡ€ΠΈΡ‡Π½Π΅Π²ΠΎ-Π·Π΅Π»Π΅Π½ΠΎ-красныС рСзисторы, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ я ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ, ΠΈΠΌΠ΅ΡŽΡ‚ Π½ΠΎΠΌΠΈΠ½Π°Π» 1,5. кОм, подавляя Ρ‚ΠΎΠΊ Π΄ΠΎ ΠΊΡ€ΠΎΡˆΠ΅Ρ‡Π½ΠΎΠΉ струйки для свСтодиодов. Ну, я ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ супСряркиС свСтодиоды, ΠΈ эти рСзисторы Π±Ρ‹Π»ΠΈ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ я Π²Ρ‹Ρ‚Π°Ρ‰ΠΈΠ». Они ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ подходят для прототипирования, Π½ΠΎ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Π·Π°ΠΌΠ΅Π½Π΅Π½Ρ‹ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ рассчитанным Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ Π³ΠΎΡ‚ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π°.

Π”Π°Π»Π΅Π΅ я ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΠ» ΠΊΠ½ΠΎΠΏΠΊΡƒ. Π¦ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Π΅ Π²Ρ…ΠΎΠ΄Ρ‹ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ² Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΠΌΠ΅Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 0 Π’ ΠΈΠ»ΠΈ VCC (Π² нашСм случаС Π²Ρ…ΠΎΠ΄Π½ΠΎΠ΅ напряТСниС Ρ€Π°Π²Π½ΠΎ 5 Π’). Если ΠΎΠ½ΠΈ Π½Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ Ρ‡Π΅Ρ‚ΠΊΠΎΠ³ΠΎ значСния, говорят, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ Β«ΠΏΠ»Π°Π²Π°ΡŽΡ‰ΠΈΠ΅Β», Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ Π»ΠΎΠΆΠ½Ρ‹ΠΌ показаниям ΠΊΠ½ΠΎΠΏΠΎΠΊ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌ нСприятным событиям. Нам Π½ΡƒΠΆΠ½ΠΎ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠ΅ обСспСчСниС, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ всСгда Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 0 Π’ ΠΈΠ»ΠΈ 5 Π’. Π­Ρ‚ΠΎ оказываСтся совсСм просто. ΠŸΡ€ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»Ρ ΠΎΡ‚ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π° ΠΊ Π·Π΅ΠΌΠ»Π΅ ΠΈ рСзистора ΠΎΡ‚ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π° ΠΊ VCC (Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΏΠΎΠ΄Ρ‚ΡΠ³ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΌ рСзистором) всСгда Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‡Π΅Π½ΡŒ нСбольшой Ρ‚ΠΎΠΊ 5 Π’, ΠΏΡ€ΠΎΡΠ°Ρ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉΡΡ Π½Π° ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚, Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ случаСв, ΠΊΠΎΠ³Π΄Π° Π½Π΅ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Ρ‹ΠΉ ΠΏΡƒΡ‚ΡŒ ΠΊ Π·Π΅ΠΌΠ»Π΅ создаСтся Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ΠΌ ΠΊΠ½ΠΎΠΏΠΊΠ°. Нам Π΄Π°ΠΆΠ΅ Π½Π΅ Π½ΡƒΠΆΠ΅Π½ собствСнный рСзистор, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ Π΅ΡΡ‚ΡŒ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΌΡ‹ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡΡ. Π’ΠΎΡ‚ схСма, ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰Π°Ρ, ΠΊΠ°ΠΊ выглядит это соСдинСниС вмСстС с Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΌ ΠΏΠΎΠ΄Ρ‚ΡΠ³ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΌ рСзистором:

Π­Ρ‚ΠΎ описаниС слишком Π΄Π»ΠΈΠ½Π½ΠΎΠ΅, Π½ΠΎ Π½Π° самом Π΄Π΅Π»Π΅ ΠΌΡ‹ всСго лишь ΠΏΠΎΠΌΠ΅Ρ‰Π°Π΅ΠΌ ΠΊΠ½ΠΎΠΏΠΊΡƒ ΠΌΠ΅ΠΆΠ΄Ρƒ PC0 ΠΈ Ground. ΠšΠΎΠ½Ρ‚Π°ΠΊΡ‚ 23 β€” это PC0 Π½Π° ATmega168, Π° ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ рядом с Π½ΠΈΠΌ (ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ 22) β€” это GND. Π― ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΠ» ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»ΡŒ соотвСтствСнно. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ 22 ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ ΠΏΠ΅Ρ€Π΅ΠΌΡ‹Ρ‡ΠΊΠΎΠΉ ΠΊ шинС зазСмлСния Π½Π°Π΄ Π½ΠΈΠΌ, Π½ΠΎ Π·Π°ΠΊΡ€Ρ‹Ρ‚ Ρ‡Π΅Ρ€Π½Ρ‹ΠΌ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΎΠΌ ΠΎΡ‚ ΠΊΠ½ΠΎΠΏΠΊΠΈ:

И, Π½Π°ΠΊΠΎΠ½Π΅Ρ†, я Ρ…ΠΎΡ‡Ρƒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒΡΡ ΠΊ микросхСмС для ВнутрисистСмноС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅. МнС нравится Π΄Π΅Π»Π°Ρ‚ΡŒ это с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ созданной ΠΌΠ½ΠΎΠΉ ΠΊΠΎΠΌΠΌΡƒΡ‚Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ‹. Π­Ρ‚ΠΎ позволяСт ΠΌΠ½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ 10-ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π½Ρ‹ΠΉ кабСль IDC для простого ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊ ΠΌΠΎΠ΅ΠΌΡƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Ρƒ:

Π’ΠΎΡ‚ ΠΈ всС. Π― ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΡŽ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ это ΠΎΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΠ΅ с нСсколькими ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΎΠΊ, поэтому ΠΏΠ΅Ρ€Π΅ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ свою ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΊΡƒ, Π° Π·Π°Ρ‚Π΅ΠΌ Π½Π°Ρ‡Π½ΠΈΡ‚Π΅ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄.

НаписаниС кода

ВрСмя ΠΏΠΎΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² написании собствСнного ΠΊΠΎΠ΄Π°. Π― ΠΏΡ€ΠΈΠ΄ΡƒΠΌΠ°Π» Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ, Ρ€Π°Π·Π»ΠΈΡ‡Π°ΡŽΡ‰ΠΈΡ…ΡΡ ΠΏΠΎ слоТности от Β«Hello WorldΒ» Π΄ΠΎ «ЧСртовски ΠΊΡ€ΡƒΡ‚ΠΎΒ». Π― ΠΊΡ€Π°Ρ‚ΠΊΠΎ расскаТу ΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΈΠ· Π½ΠΈΡ…, Π½ΠΎ ΠΏΠΎΠΏΡƒΡ‚Π½ΠΎ Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ свой собствСнный ΠΊΠΎΠ΄, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΌΠΎΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ как… ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹. Π›ΡƒΡ‡ΡˆΠΈΠΉ способ Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ β€” это Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π½Π΅Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ ΠΊΠΎΠ΄Π°, ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ΡŒ компилятору ΠΏΠΎΠΊΡ€ΠΈΡ‡Π°Ρ‚ΡŒ Π½Π° вас Π·Π° ΠΎΡˆΠΈΠ±ΠΊΡƒ, Π° Π·Π°Ρ‚Π΅ΠΌ Π²Ρ‹ΡΡΠ½ΠΈΡ‚ΡŒ, ΠΊΠ°ΠΊ это ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ.

ΠœΠΈΠ³Π°ΡŽΡ‚ всС 8 (8 свСтодиодов_1 Π“Ρ†)

ΠŸΡ€Π΅ΠΆΠ΄Π΅ всСго, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π»ΠΈ Π²Ρ‹ Π²Ρ‹ Π·Π°ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ ΠΈΠ· ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° ΠΈΠ· Части 2 ΠΌΠΈΠ³Π°Ρ‚ΡŒ всСми 8 свСтодиодами вмСсто ΠΎΠ΄Π½ΠΎΠ³ΠΎ?

Π•ΡΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄Π²Π΅ Π²Π΅Ρ‰ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ это ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»ΠΎ. Π’ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, ΠΏΡ€ΠΈ настройкС Π²Π²ΠΎΠ΄Π°/Π²Ρ‹Π²ΠΎΠ΄Π° сдСлайтС всС ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹ ΠΏΠΎΡ€Ρ‚Π° D Π²Ρ‹Ρ…ΠΎΠ΄Π°ΠΌΠΈ, Π° Π·Π°Ρ‚Π΅ΠΌ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ ΠΈΡ… всС. Π’ΠΎ-Π²Ρ‚ΠΎΡ€Ρ‹Ρ…, ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ Π±ΠΈΡ‚ΠΎΠ² Π² ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ обслуТивания ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π±ΠΈΡ‚ΠΎΠ²ΡƒΡŽ маску, которая влияСт Π½Π° всС восСмь Π±ΠΈΡ‚ΠΎΠ². 9= 0xFF; // Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ xor для ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ свСтодиодов

Как Π²ΠΈΠ΄ΠΈΡ‚Π΅, ΠΎΠ±Π΅ части ΠΊΠΎΠ΄Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ 0xFF Π² качСствС Π±ΠΈΡ‚ΠΎΠ²ΠΎΠΉ маски. Π­Ρ‚ΠΎ Π±Π°ΠΉΡ‚, содСрТащий всС Π΅Π΄ΠΈΠ½ΠΈΡ†Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΠΌΠ°Π½ΠΈΠΏΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΌ Π²Ρ‹Π²ΠΎΠ΄ΠΎΠΌ Π² рСгистрах, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΌΡ‹ Π΅Π³ΠΎ примСняСм. Π”ΠΎ этого я Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ сдвинулся, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ это:

 '1<<0' 

Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²Π΅Π»ΠΎ ΠΊ Π±ΠΈΡ‚ΠΎΠ²ΠΎΠΉ маскС 0x01, Π·Π°Ρ‰ΠΈΡ‰Π°ΡŽΡ‰Π΅ΠΉ Π²Π΅Ρ€Ρ…Π½ΠΈΠ΅ сСмь Π±ΠΈΡ‚ΠΎΠ² ΠΎΡ‚ измСнСния Π²ΠΎ врСмя манипуляций с рСгистром.

Π—Π°ΡΡ‚Π°Π²ΡŒΡ‚Π΅ свСтодиоды Π΄Π΅Π»Π°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ интСрСсноС (m168_led_effects)

Π’Π΅ΠΏΠ΅Ρ€ΡŒ я ΡΠΎΠ±ΠΈΡ€Π°ΡŽΡΡŒ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ большой шаг Π²ΠΏΠ΅Ρ€Π΅Π΄ Π² слоТности C-ΠΊΠΎΠ΄Π°. Но я ΠΏΡ€Π΅Π΄Π»Π°Π³Π°ΡŽ Π²Π°ΠΌ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Ρ‚Ρ€ΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠ° свСтодиодных эффСктов:

  • Π”Π²ΠΎΠΈΡ‡Π½Ρ‹ΠΉ счСтчик, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ считаСт 1 Π±ΠΈΡ‚ Π² сСкунду
  • Мигалка, которая ΠΏΠΎΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ Π·Π°ΠΆΠΈΠ³Π°Π΅Ρ‚ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Π²Ρ‚ΠΎΡ€ΠΎΠΉ свСтодиод
  • Π‘ΠΊΠ°Π½Π΅Ρ€ Ларсона (простой, Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ШИМ)

Π’Ρ‹ Π½Π°ΠΉΠ΄Π΅Ρ‚Π΅ ΠΌΠΎΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΠ΄Π° Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ m168_led_effects. Π’ΠΎΡ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· Π½ΠΎΠ²Ρ‹Ρ… Π²Π΅Ρ‰Π΅ΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ я ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ Π² своСм ΠΊΠΎΠ΄Π΅:

ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΡ: Π― ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ опрСдСлСния для ΠΎΠ±Ρ‰ΠΈΡ… настроСк ΠΈ для ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ² Π²Π²ΠΎΠ΄Π°-Π²Ρ‹Π²ΠΎΠ΄Π°, ΠΏΠΎΡ€Ρ‚ΠΎΠ² ΠΈ рСгистров направлСния. Π­Ρ‚ΠΎ константы, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ компилятор Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌΠΈ значСниями, Π½ΠΎ ΠΎΠ½ΠΈ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠ±Π»Π΅Π³Ρ‡Π°Ρ‚ Π²Π°ΡˆΡƒ Ρ€Π°Π±ΠΎΡ‚Ρƒ. Если Π²Ρ‹ ΠΏΡ€ΠΎΠΉΠ΄Ρ‘Ρ‚Π΅ Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΈ ΠΏΠΎΠΉΠΌΡ‘Ρ‚Π΅, Ρ‡Ρ‚ΠΎ Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ‡Π°ΡΡ‚ΡŒ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ обСспСчСния, это упростит Π²Π°ΠΌ Π·Π°Π΄Π°Ρ‡Ρƒ. НуТно ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ с ΠΏΠΎΡ€Ρ‚Π° D Π½Π° ΠΏΠΎΡ€Ρ‚ C? НСт ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ, ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚Π΅ #define, ΠΈ ΠΎΡΡ‚Π°Π»ΡŒΠ½Π°Ρ Ρ‡Π°ΡΡ‚ΡŒ ΠΊΠΎΠ΄Π° ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ

Π—Π°Π΄Π΅Ρ€ΠΆΠΊΠ°: Π’ AVR libc Π΅ΡΡ‚ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΠ°Ρ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π° Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ, называСмая delay. h. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ я Π²ΠΊΠ»ΡŽΡ‡ΠΈΠ» Π΅Π³ΠΎ Π² Π½Π°Ρ‡Π°Π»ΠΎ исходного Ρ„Π°ΠΉΠ»Π°, Π° Ρ‚Π°ΠΊΠΆΠ΅ написал Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ с ΠΈΠΌΠ΅Π½Π΅ΠΌ delay_ms(). Π­Ρ‚ΠΎ ΡƒΠΌΠ΅Ρ€Π΅Π½Π½ΠΎ Ρ‚ΠΎΡ‡Π½Ρ‹ΠΉ способ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. НСдостатком этого являСтся Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π±ΡƒΠΊΠ²Π°Π»ΡŒΠ½ΠΎ Ρ‚Ρ€Π°Ρ‚ΠΈΡ‚Π΅ врСмя, ΠΊΠΎΠ³Π΄Π° процСссор ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒΡΡ Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ Π΄Π΅Π»Π°ΠΌΠΈ. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, это просто, ΠΈ Ссли Π²Ρ‹ Π½ΠΎΠ²ΠΈΡ‡ΠΎΠΊ Π² ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°Ρ…, Π²Ρ‹, вСроятно, ΠΏΠΎΠ½Π°Ρ‡Π°Π»Ρƒ часто Π±ΡƒΠ΄Π΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ это.

Π’ этой вСрсии ΠΊΠΎΠ΄Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ я ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ для упрощСния MAIN. МнС нравится Π΄Π΅Π»Π°Ρ‚ΡŒ это, ΠΊΠΎΠ³Π΄Π° я ΠΌΠΎΠ³Ρƒ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π±ΠΎΠ»Π΅Π΅ Ρ‡ΠΈΡ‚Π°Π±Π΅Π»ΡŒΠ½ΠΎΠΉ. Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ ΠΎΠΏΠΈΡΠ°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΈΠΌΠ΅Π½Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, Π΄Ρ€ΡƒΠ³ΠΈΠΌ Π±ΡƒΠ΄Π΅Ρ‚ Π»Π΅Π³ΠΊΠΎ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ, ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠ°, просто взглянув Π½Π° main. Π’ΠΎΡ‚ ΠΏΠΎΡ‡Π΅ΠΌΡƒ я Ρ‚Π°ΠΊ ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚ΠΈΡ€ΡƒΡŽ свой ΠΊΠΎΠ΄. НС Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для Π΄Ρ€ΡƒΠ³ΠΈΡ…, Π½ΠΎ ΠΈ для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ я ΠΌΠΎΠ³ быстро ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Π΅, Ссли Π²Π΅Ρ€Π½ΡƒΡΡŒ ΠΊ Π½Π΅ΠΉ ΠΏΠΎΠ·ΠΆΠ΅ ΠΈ Π½Π΅ вспомню, для Ρ‡Π΅Π³ΠΎ ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ написал ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ.

ΠŸΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΌΡ‹ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΠΌ, Π²ΠΎΡ‚ ΠΊΡ€Π°Ρ‚ΠΊΠΈΠΉ ΠΎΠ±Π·ΠΎΡ€ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ я Ρ€Π΅ΡˆΠΈΠ» Ρ‚Ρ€ΠΈ Π·Π°Π΄Π°Ρ‡ΠΈ:

  • ΠŸΡ€ΠΈ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ Π΄Π²ΠΎΠΈΡ‡Π½ΠΎΠ³ΠΎ счСтчика с частотой 1 Π“Ρ† я просто Π·Π°ΠΏΡƒΡΠΊΠ°ΡŽ Π’Π°ΠΉΠΌΠ΅Ρ€ 2 Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ я Π΄Π΅Π»Π°Π» это для ΠΌΠΈΠ³Π°ΡŽΡ‰Π΅Π³ΠΎ свСтодиода Π²ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΉ части руководства. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ срабатываСт, я Π½Π΅ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°ΡŽ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹, Π° ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡŽ для всСго ΠΏΠΎΡ€Ρ‚Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 8-Π±ΠΈΡ‚Π½ΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ, ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ увСличивая Π΅Π³ΠΎ. ++binary_counter ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚ это Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ нСпосрСдствСнно ΠΏΠ΅Ρ€Π΅Π΄ установкой ΠΏΠΎΡ€Ρ‚Π° D. ΠšΡ€Π°ΠΉΠ½Π΅ Π²Π°ΠΆΠ½ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ это Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π±Ρ‹Π»ΠΎ глобальной ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ с ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ словом volatile, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½ΠΎ измСняСтся ΠΊΠ°ΠΊ ISR, Ρ‚Π°ΠΊ ΠΈ Π² основном Ρ†ΠΈΠΊΠ»Π΅. Если Π²Ρ‹ Π½Π΅ сдСлаСтС Π΅Π³ΠΎ ΠΈΠ·ΠΌΠ΅Π½Ρ‡ΠΈΠ²Ρ‹ΠΌ, компилятор ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄ Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Ρ‡Ρ‚ΠΎ это Π½Π°Ρ€ΡƒΡˆΠΈΡ‚ ΠΈΠ»ΠΈ Π½Π°Ρ€ΡƒΡˆΠΈΡ‚ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅ΠΌΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ.
  • Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ ΠΌΠΈΠ³Π°Π»ΠΊΠΈ ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΡ…ΠΎΠΆΠ΅ Π½Π° ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ свСтодиода. Π― настроил эффСкт, создав экзСмпляр ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ, Π³Π΄Π΅ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Π²Ρ‚ΠΎΡ€ΠΎΠΉ Π±ΠΈΡ‚ Ρ€Π°Π²Π΅Π½ 1. ΠŸΡ€ΠΈ использовании ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰Π΅Π³ΠΎ Π˜Π›Π˜ (XOR) для этого значСния всС Π±ΠΈΡ‚Ρ‹ Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΠ½Π²Π΅Ρ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹. Π― ΠΌΠΎΠ³ Π±Ρ‹ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅ с Π±ΠΎΠ»Π΅Π΅ ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΎΠΉ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ, Ρ‡Π΅ΠΌ ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅ Π² 1 Π“Ρ†, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ·Π°Π±ΠΎΡ‚ΠΈΡ‚ΡŒΡΡ ΠΎΠ± этом, Π½ΠΎ вмСсто этого Π² цСлях обучСния я использовал Π·Π°Π΄Π΅Ρ€ΠΆΠΊΡƒ.
  • Π‘ΠΊΠ°Π½Π΅Ρ€ Ларсона β€” классичСскоС Ρ‡ΡƒΠ΄ΠΎ. Основная функция состоит Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°ΠΆΠ΅Ρ‡ΡŒ ΠΎΠ΄ΠΈΠ½ свСтодиод ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π²ΠΏΠ΅Ρ€Π΅Π΄ ΠΈ Π½Π°Π·Π°Π΄. Для этого я просто создал Ρ†ΠΈΠΊΠ» для сдвига Π±ΠΈΡ‚ΠΎΠ², оТидая послС ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ измСнСния. Как Ρ‚ΠΎΠ»ΡŒΠΊΠΎ загорится свСтодиод Π² ΠΊΠΎΠ½Ρ†Π΅, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π²Ρ‹ΠΉΠ΄Π΅Ρ‚ ΠΈΠ· Ρ†ΠΈΠΊΠ»Π° ΠΈ Π²ΠΎΠΉΠ΄Π΅Ρ‚ Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠ΄Π²ΠΈΠ½ΡƒΡ‚ΡŒ Π±ΠΈΡ‚Ρ‹ Π² Π΄Ρ€ΡƒΠ³ΡƒΡŽ сторону. Π’ΠΎ ΠΆΠ΅ самоС ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ, которая отслСТиваСт, Π² ΠΊΠ°ΠΊΠΎΠΌ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ двиТСтся свСтодиод, провСряя ΠΊΠ°ΠΆΠ΄ΡƒΡŽ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΡŽ.

Когда Π²Ρ‹ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Π»ΠΈ ΠΈ поняли, ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ этот ΠΊΠΎΠ΄, ΠΏΡ€ΠΈΡˆΠ»ΠΎ врСмя Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ.

Π—Π°ΡΡ‚Π°Π²ΡŒΡ‚Π΅ ΠΊΠ½ΠΎΠΏΠΊΡƒ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ (m168_led_button)

ΠœΡ‹ принСсли ΠΊΠ½ΠΎΠΏΠΊΡƒ Π½Π° Π²Π΅Ρ‡Π΅Ρ€ΠΈΠ½ΠΊΡƒ, Π΄Π°Π²Π°ΠΉΡ‚Π΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠΌ наши свСтодиодныС эффСкты, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΊΠ½ΠΎΠΏΠΊΠ° использовалась для ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρƒ трСмя возмоТностями. Если Π²Ρ‹ Π½ΠΈΠΊΠΎΠ³Π΄Π° Ρ€Π°Π½ΡŒΡˆΠ΅ Π½Π΅ писали ΠΊΠΎΠ΄ для ΠΊΠ½ΠΎΠΏΠΊΠΈ Π²Π²ΠΎΠ΄Π°, Ρƒ вас ΠΌΠ°Π»ΠΎ шансов, Ρ‡Ρ‚ΠΎ Π²Ρ‹ смоТСтС ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ это ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ, поэтому ΠΎΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ ΠΊΠΎΠ΄ Π² ΠΏΠ°ΠΏΠΊΠ΅ m168_led_button ΠΈ Π΄Π°Π²Π°ΠΉΡ‚Π΅ пройдСмся ΠΏΠΎ Π½Π΅ΠΌΡƒ.

ΠžΡ‚ΠΊΠ°Π·: Кнопки часто Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΡƒΡŽΡ‚ Π±ΠΎΠ»Π΅Π΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ наТатия, Ссли Π½Π΅ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ, этот процСсс называСтся устранСниСм Π΄Ρ€Π΅Π±Π΅Π·Π³Π°. Для этого Π΅ΡΡ‚ΡŒ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠ΅ исправлСниС, Π½ΠΎ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠ·Π½Π°Ρ‚ΡŒ ΠΎΠ± этом Π² свободноС врСмя. НСдавно я собрал пост, ΠΏΠΎΠ»Π½Ρ‹ΠΉ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΊΠΎΠ΄ΠΎΠ² для устранСния ΠΎΡ‚ΠΊΠ°Π·ΠΎΠ², Π½ΠΎ Ρ‚ΠΎΡ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ я ΠΏΠΎΡ‡Ρ‚ΠΈ всСгда ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ, основан Π½Π° ΠΊΠΎΠ΄Π΅ [Peter Dannegger]. Он состоит ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… частСй:

  • Код для запуска Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° с ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅ΠΌ пСрСполнСния
  • ISR для обслуТивания пСрСполнСния Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°, сброса Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° для 10-миллисСкундных ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠΉ ΠΈ опроса Π²Ρ‹Π²ΠΎΠ΄Π° ΠΊΠ½ΠΎΠΏΠΊΠΈ.
  • Битовая маска ΠΈ опрСдСлСния ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚, ΠΊΠ°ΠΊ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹
  • Ѐункция, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠ°Ρ для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Ρ‚ΠΎΠ³ΠΎ, Π±Ρ‹Π»ΠΎ Π»ΠΈ зарСгистрировано Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ
  • Код для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ этой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ дСйствия ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ.

Π’ΠΎΠ»ΡˆΠ΅Π±ΡΡ‚Π²ΠΎ кроСтся Π² ΠΊΠΎΠ΄Π΅ устранСния Π΄Ρ€Π΅Π±Π΅Π·Π³Π° ISR. Он ΠΏΠ΅Ρ€Π΅Π²ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°Π΅Ρ‚ Π±ΠΈΡ‚Ρ‹ Π² Π΄Π²ΠΎΠΈΡ‡Π½ΠΎΠΌ счСтчикС, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… показания наТатия ΠΊΠ½ΠΎΠΏΠΊΠΈ Π² ΠΎΠ±Ρ‰Π΅ΠΉ слоТности 40 мс. Π­Ρ‚ΠΎ сигнализируСт ΠΎ Π·Π°ΠΊΠΎΠ½Π½ΠΎΠΌ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ, ΠΈ ΠΊΠΎΠ³Π΄Π° вызываСтся функция get_key_press, ΠΎΠ½Π° Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Π½ΡƒΡŽ маску клавиши. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΌΠΎΡ‡ΡŒ ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ этот ΠΊΠΎΠ΄ устранСния Π΄Ρ€Π΅Π±Π΅Π·Π³Π°, я Π²ΠΊΠ»ΡŽΡ‡ΠΈΠ» ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΠ΄Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ называСтся button_debounce. Он Π±Ρ‹Π» сокращСн, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠΎΠ΄, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ для устранСния Π΄Ρ€Π΅Π±Π΅Π·Π³Π°. НаТатиС ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ свСтодиоды.

Π’ΠΎ врСмя настройки оборудования я Π³ΠΎΠ²ΠΎΡ€ΠΈΠ» ΠΎΠ± использовании Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΡ… ΠΏΠΎΠ΄Ρ‚ΡΠ³ΠΈΠ²Π°ΡŽΡ‰ΠΈΡ… рСзисторов. Π― Π΄ΠΎΠ»ΠΆΠ΅Π½ Π½Π΅ Π·Π°Π±Ρ‹Ρ‚ΡŒ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΈΡ… Π² Π½Π°Ρ‡Π°Π»Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΈΠ½Π°Ρ‡Π΅ Π²Ρ…ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠ»Π°Π²Π°ΡŽΡ‰ΠΈΠΌ. Π’ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΎΠ± этом говорится Π½Π° страницС 71. Когда ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ настроСн Π½Π° Π²Π²ΠΎΠ΄ с использованиСм рСгистра направлСния Π΄Π°Π½Π½Ρ‹Ρ…, запись высокого значСния Π² Π±ΠΈΡ‚ ΠΏΠΎΡ€Ρ‚Π° для этого ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π° Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΏΠΎΠ΄Ρ‚ΡΠ³ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ рСзистор. ΠžΡ‚Ρ‚ΡƒΠ΄Π° Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ статус Π²Ρ‹Π²ΠΎΠ΄Π° ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΈΠ· ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ рСгистра Π²Ρ‹Π²ΠΎΠ΄Π°. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ ISR, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ для устранСния Π΄Ρ€Π΅Π±Π΅Π·Π³Π°, Ρ‡ΠΈΡ‚Π°Π΅Ρ‚ KEY_PIN, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ ΠΊΠ°ΠΊ рСгистр PINC Π² Π½Π°Ρ‡Π°Π»Π΅ исходного ΠΊΠΎΠ΄Π°. Π’Π°ΠΌ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ рСгистр Pin, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ISR Π΄Π΅Π»Π°Π΅Ρ‚ это Π·Π° вас.

Моя рСализация подавлСния Π΄Ρ€Π΅Π±Π΅Π·Π³Π° ΠΊΠ½ΠΎΠΏΠΎΠΊ Π² ΠΊΠΎΠ΄Π΅ m168_led_button ΠΎΡ‡Π΅Π½ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΠ°, Π½ΠΎ ΠΌΠΎΠ΅ использованиС ΠΊΠ½ΠΎΠΏΠΊΠΈ β€” это Ρ…Π°ΠΊ. Π― Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Π» ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹ΠΉ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ ΠΈ ΠΈΠ·Π±Π°Π²ΠΈΡ‚ΡŒΡΡ ΠΎΡ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ Π² ΠΊΠΎΠ΄Π΅. Для простоты я просто засорял Π²Ρ‹Π·ΠΎΠ²Ρ‹ get_key_press ΠΏΠΎ всСму ΠΊΠΎΠ΄Ρƒ всякий Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° я Π·Π°Ρ†ΠΈΠΊΠ»ΠΈΠ²Π°Π» ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ. Π― использовал ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ наТатия клавиши, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒΡΡ ΠΊ Π³Π»Π°Π²Π½ΠΎΠΌΡƒ ΠΈΠ· Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ застряла ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°.

Π Π°Π·Π±Π΅Ρ€ΠΈΡ‚Π΅ это ΠΏΠΎ частям, Π½Π°ΠΏΠΈΡˆΠΈΡ‚Π΅ простой ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ‚Π΅, ΠΈ постСпСнно Π²Ρ‹ создадитС Π±Π°Π·Ρƒ Π·Π½Π°Π½ΠΈΠΉ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡƒΡŽ для понимания этого ΠΊΠΎΠ΄Π° Π² Ρ†Π΅Π»ΠΎΠΌ.

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Ρ‡Π΅Π³ΠΎ-Ρ‚ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠ³ΠΎ (m168_bike_light)

Π― Ρ…ΠΎΡ‚Π΅Π» Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΡ‚ΡŒ Ρ€Π°Π·Π΄Π΅Π» написания ΠΊΠΎΠ΄Π° ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΌ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ для нашСго тСстового ΠΆΠ΅Π»Π΅Π·Π°. Π’ΠΎΡ‚, вСлосипСдный Π·Π°Π΄Π½ΠΈΠΉ Ρ„ΠΎΠ½Π°Ρ€ΡŒ. Π£ Π½Π΅Π³ΠΎ Π΅ΡΡ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΠ° для ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… шаблонов красного свСта, ΠΈ ΠΎΠ½ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ спящий Ρ€Π΅ΠΆΠΈΠΌ для ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ свСтодиодов ΠΈ экономии заряда Π±Π°Ρ‚Π°Ρ€Π΅ΠΈ.

Π― ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ» ΠΏΠΎΡ‚ΠΎΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹ΠΉ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚. Π­Ρ‚ΠΎ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π²Ρ€ΠΎΠ΄Π΅ Тонглирования. Π― ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅ для установки Ρ„Π»Π°Π³Π° ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ Β«Ρ‚Π°ΠΉΠΌΠ΅Ρ€Β». Основной Ρ†ΠΈΠΊΠ» постоянно ΠΎΠΏΡ€Π°ΡˆΠΈΠ²Π°Π΅Ρ‚ этот Ρ„Π»Π°Π³, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΊΠ½ΠΎΠΏΠΊΡƒ ΠΈ дСйствуСт ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ. Всякий Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° этот Ρ„Π»Π°Π³ установлСн, выполняСтся ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ шаг свСтодиодного эффСкта.

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ спящий Ρ€Π΅ΠΆΠΈΠΌ. Одно Π·Π°ΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: Π² спящСм Ρ€Π΅ΠΆΠΈΠΌΠ΅ Ρ‡ΠΈΠΏ ΠΏΠΎΡ‡Ρ‚ΠΈ Π½Π΅ потрСбляСт Ρ‚ΠΎΠΊ, экономя заряд Π±Π°Ρ‚Π°Ρ€Π΅ΠΈ. Но Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹ΠΉ рСгулятор мощности всС Ρ€Π°Π²Π½ΠΎ сгораСт ΠΊΠ°ΠΊ ΡΡƒΠΌΠ°ΡΡˆΠ΅Π΄ΡˆΠΈΠΉ. Π§Ρ‚ΠΎΠ±Ρ‹ это Π±Ρ‹Π»ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ, ΠΊΠΎΠ΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ пСрСнСсСн Π½Π° Ρ‡ΠΈΠΏ, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΈ Π½ΠΈΠ·ΠΊΠΎΠΌ напряТСнии. НапримСр, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΡ€ΠΎΡˆΠ΅Ρ‡Π½ΡƒΡŽ 13 ΠΈ Π΄Π²Π΅ Π±Π°Ρ‚Π°Ρ€Π΅ΠΉΠΊΠΈ АА Π±Π΅Π· рСгулятора. ΠŸΠΎΡ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ΡΡ внСсти ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹ для мСньшСго количСства ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ² ΠΈ ΡΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ значСния рСзисторов свСтодиодов, Π½ΠΎ это нСслоТныС измСнСния. ВзглянитС Π½Π° ΠΊΠΎΠ΄ Π² ΠΏΠ°ΠΏΠΊΠ΅ m168_bike_light. ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΈ ваши с Ρ‚Ρ€ΡƒΠ΄ΠΎΠΌ Π·Π°Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Π΅ знания AVR ΠΏΠΎΠΌΠΎΠ³ΡƒΡ‚ Π²Π°ΠΌ ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΊΠ°ΠΊ это Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚. Π£Π΄Π°Ρ‡ΠΈ!

Π’Π΅ΠΏΠ΅Ρ€ΡŒ я ΠΏΠ΅Ρ€Π΅ΠΉΠ΄Ρƒ ΠΊ ΠΎΠ±ΡΡƒΠΆΠ΄Π΅Π½ΠΈΡŽ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½Ρ‹Ρ… частСй этих ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ²:

Π‘ΠΈΡ‚Ρ‹ ΠΏΡ€Π΅Π΄ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚Π΅Π»Π΅ΠΉ AVR

Π‘ΠΈΡ‚Ρ‹ ΠΏΡ€Π΅Π΄ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚Π΅Π»Π΅ΠΉ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой Π½Π°Π±ΠΎΡ€ рСгистров, ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΡ… Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ основными функциями Π»ΠΈΠ½Π΅ΠΉΠΊΠΈ микросхСм AVR. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄ΡƒΠΌΠ°Ρ‚ΡŒ ΠΎ Π½ΠΈΡ… ΠΊΠ°ΠΊ ΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠΌ Ρ‚ΠΈΠΏΠ΅ памяти, Π·Π°ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ ΠΎΡ‚ ΠΊΠΎΠ΄Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ.

ΠŸΡ€ΠΎΡ‡Ρ‚ΠΈΡ‚Π΅ тСхничСскоС описаниС

Ѐьюз-Π±ΠΈΡ‚Ρ‹ для ATmega168 Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°ΡŽΡ‚ΡΡ, начиная со страницы 285 тСхничСского описания. Π’Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Ρ‚Ρ‰Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ с этой ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ. ΠΠ΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ этих рСгистров ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ваш Ρ‡ΠΈΠΏ бСсполСзным, Ссли Ρƒ вас Π½Π΅Ρ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π°, способного ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ высокого напряТСния (HVP).

На нашСм Ρ‡ΠΈΠΏΠ΅ Π΅ΡΡ‚ΡŒ Ρ‚Ρ€ΠΈ рСгистра Ρ„ΡŒΡŽΠ·-Π±ΠΈΡ‚ΠΎΠ²: Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ Ρ„ΡŒΡŽΠ·-Π±Π°ΠΉΡ‚, ΡΡ‚Π°Ρ€ΡˆΠΈΠΉ Ρ„ΡŒΡŽΠ·-Π±Π°ΠΉΡ‚ ΠΈ младший Ρ„ΡŒΡŽΠ·-Π±Π°ΠΉΡ‚. ВсС ΠΎΠ½ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΎΠ±Ρ€Π°Ρ‚Π½ΡƒΡŽ Π»ΠΎΠ³ΠΈΠΊΡƒ, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Β«1Β» ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π°Ρ функция НЕ Π²Ρ‹Π±Ρ€Π°Π½Π°. Π― Π½Π°Ρ‡ΠΈΠ½Π°ΡŽ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ с этими рСгистрами, установлСнными Π½Π° заводскиС значСния ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ я Ρ…Ρ€Π°Π½ΡŽ Π² тСкстовом Ρ„Π°ΠΉΠ»Π΅ с заводскими значСниями ΠΏΡ€Π΅Π΄ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚Π΅Π»Π΅ΠΉ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ для всСх микросхСм, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ я Ρ€Π°Π±ΠΎΡ‚Π°ΡŽ. Π’ Π½Π°Ρ‡Π°Π»Π΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° я ΠΏΡ‹Ρ‚Π°ΡŽΡΡŒ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒ с Ρ‡ΠΈΠΏΠΎΠΌ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΎΠΏΡ†ΠΈΡŽ Β«-vΒ» AVRdude, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ ΠΈ Ρ‡ΠΈΠΏ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ‚ΡŒ врСмя Π½Π° ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΠΎΡ‚Π»Π°Π΄ΠΊΠ΅. Π’ΠΎΡ‚ значСния ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ для ATmega168:

  • излияниС: 0b11111111 (0xFF)
  • hΠΏΡ€Π΅Π΄ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚Π΅Π»ΡŒ: 0b11011111 (0xDF)
  • lfuse: 0b01100010 (0x62)

Π― ΠΊΠΎΡΠ½ΡƒΡΡŒ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° этих Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ Ρ€Π°Π·Π΄Π΅Π»Π΅. Но ΠΎΡΠΎΠ±ΡƒΡŽ ΠΎΠ·Π°Π±ΠΎΡ‡Π΅Π½Π½ΠΎΡΡ‚ΡŒ Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‚ Π±ΠΈΡ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹Π±ΠΈΡ€Π°ΡŽΡ‚ источник синхронизации, ΠΈ Π±ΠΈΡ‚ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ сброса. Если Π²Ρ‹ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ сброса случайно ΠΈΠ»ΠΈ для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π² качСствС ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π° Π²Π²ΠΎΠ΄Π°-Π²Ρ‹Π²ΠΎΠ΄Π°, Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ HVP ΠΈΠ»ΠΈ debugWire, Ρ‡Ρ‚ΠΎΠ±Ρ‹ снова ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ISP. Если ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹ синхронизации ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Ρ‹, Π²Π°ΠΌ потрСбуСтся ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ внСшний сигнал синхронизации ΠΈΠ»ΠΈ HVP ΠΏΠΎ Ρ‚ΠΎΠΉ ΠΆΠ΅ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅.

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π·Π°ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡŒΡŽΠ·-Π±ΠΈΡ‚Ρ‹ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ AVRdude. БобствСнно, Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ Π΅ΡΡ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€. Π­Ρ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° Π²Π΅Ρ€Π½Π΅Ρ‚ ΠΏΡ€Π΅Π΄ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚Π΅Π»ΠΈ ΠΊ заводским настройкам:

 avrdude -c dragon_isp -P usb -p m168 -U efuse:w:0xff:m -U hfuse:w:0xdf:m -U lfuse:w:0x62:m 

ΠŸΠ΅Ρ€ΠΈΡ„Π΅Ρ€ΠΈΠΉΠ½Ρ‹Π΅ устройства AVR (ΠΊΡ€Π°Ρ‚ΠΊΠΈΠΉ ΠΎΠ±Π·ΠΎΡ€)

ΠŸΡ€ΠΎΠ²Π΅Π΄ΠΈΡ‚Π΅ ΠΊΡ€Π°Ρ‚ΠΊΠΈΠΉ ΠΎΠ±Π·ΠΎΡ€ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, доступных Π½Π° этом Ρ‡ΠΈΠΏΠ΅. Π­Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ быстро, Π½ΠΎ Ρƒ вас ΡƒΠΆΠ΅ Π΅ΡΡ‚ΡŒ основныС Π½Π°Π²Ρ‹ΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Π°ΠΌ Π½ΡƒΠΆΠ½Ρ‹. ΠŸΡ€ΠΎΡΡ‚ΠΎ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°ΠΉΡ‚Π΅ тСхничСскоС описаниС ΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π° соСдинитС ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ Ρ‚ΠΎΡ‡ΠΊΠΈ.

ΠŸΠ°ΠΌΡΡ‚ΡŒ EEPROM

Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ (Ссли Π½Π΅ всС) микросхСм AVR ΠΏΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ΡΡ с элСктронно стираСмой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΠ΅ΠΌΠΎΠΉ постоянной ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ. Π­Ρ‚ΠΎ постоянная ΠΏΠ°ΠΌΡΡ‚ΡŒ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ хранятся Π΄Π°Π½Π½Ρ‹Π΅ ΠΌΠ΅ΠΆΠ΄Ρƒ сбросами ΠΈ ΠΏΡ€ΠΈ отсутствии питания Π½Π° микросхСмС. ИмСнно здСсь рСгистраторы Π΄Π°Π½Π½Ρ‹Ρ… хранят ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΈ часто содСрТат Ρ‚Π°ΠΊΠΈΠ΅ Π²Π΅Ρ‰ΠΈ, ΠΊΠ°ΠΊ тСкстовыС строки, Π΄Π°Π½Π½Ρ‹Π΅ ΡˆΡ€ΠΈΡ„Ρ‚ΠΎΠ² ΠΈ Ρ‚. Π΄. AVR-GCC сгСнСрируСт Ρ„Π°ΠΉΠ» .EEP Π²ΠΎ врСмя компиляции с Π»ΡŽΠ±Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ EEPROM, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Π² своих ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ…. Π­Ρ‚ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π² Ρ‡ΠΈΠΏ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ ΠΎΡ‚ Ρ„Π»ΡΡˆ-Π΄Π°Π½Π½Ρ‹Ρ….

Π’Π°ΠΉΠΌΠ΅Ρ€Ρ‹ (ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Π΅ ΠΈ стороТСвыС)

Π’Π°ΠΉΠΌΠ΅Ρ€Ρ‹ β€” это Π»ΡƒΡ‡ΡˆΠ΅Π΅ мСсто с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. Они выходят Π΄Π°Π»Π΅ΠΊΠΎ Π·Π° Ρ€Π°ΠΌΠΊΠΈ простого измСрСния Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для Π²Ρ‹Π²ΠΎΠ΄Π° микросхСмы ΠΈΠ· спящСго Ρ€Π΅ΠΆΠΈΠΌΠ°, для Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ частот ΡˆΠΈΡ€ΠΎΡ‚Π½ΠΎ-ΠΈΠΌΠΏΡƒΠ»ΡŒΡΠ½ΠΎΠΉ модуляции ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ³ΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ. НСкоторыС Ρ‡ΠΈΠΏΡ‹ ΠΈΠΌΠ΅ΡŽΡ‚ асинхронныС Ρ‚Π°ΠΉΠΌΠ΅Ρ€Ρ‹, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Timer/Counter 2 Π½Π° ATmega168, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ внСшний Ρ‚Π°ΠΊΡ‚ΠΎΠ²Ρ‹ΠΉ сигнал ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ‚Π°ΠΉΠΌΠ΅Ρ€ΠΎΠ².

НС упуститС Ρ‚Π°ΠΊΠΆΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€. Π­Ρ‚ΠΈ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ‚ΡŒ дСньги ΠΈ Π΄Π°ΠΆΠ΅ ΠΆΠΈΠ·Π½ΠΈ. Π­Ρ‚ΠΎ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹ΠΉ Ρ‚Π°ΠΉΠΌΠ΅Ρ€, Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ Ρ‡Π΅Ρ€Π΅Π· Ρ„ΡŒΡŽΠ·-Π±ΠΈΡ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΠ±Ρ€Π°ΡΡ‹Π²Π°ΡŽΡ‚ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€, Ссли ΠΎΠ½ Π½Π΅ обрабатываСтся ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ. ΠŸΠΎΡ‡Π΅ΠΌΡƒ Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ? ΠŸΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Π½ΠΈΠΊΡ‚ΠΎ Π½Π΅ ΠΏΠΈΡˆΠ΅Ρ‚ ΠΈΠ΄Π΅Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄. ΠŸΡ€ΠΈ использовании стороТСвого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° Π²Ρ‹ часто сбрасываСтС Π΅Π³ΠΎ счСтчик Π²ΠΎ врСмя ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠ³ΠΎ выполнСния ΠΊΠΎΠ΄Π°. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Ссли ваш ΠΊΠΎΠ΄ ΠΊΠΎΠ³Π΄Π°-Π»ΠΈΠ±ΠΎ зависнСт ΠΈΠ»ΠΈ ΠΏΠΎΠΏΠ°Π΄Π΅Ρ‚ Π² Ρ†ΠΈΠΊΠ», стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€ автоматичСски ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ устройство, ΠΈΠ·Π±Π°Π²ΠΈΠ² вас ΠΎΡ‚ привязки, Π²Ρ‹Π·Π²Π°Π½Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΌ обСспСчСниСм. ΠŸΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ [Π”ΠΆΠ΅ΠΊ ГансслС] Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ ΠΎ Π½ΠΈΡ….

Π‘Ρ‡Π΅Ρ‚Ρ‡ΠΈΠΊ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ

Π’Ρ‹ΡˆΠ΅ я ΡƒΠΏΠΎΠΌΠΈΠ½Π°Π», Ρ‡Ρ‚ΠΎ Π’Π°ΠΉΠΌΠ΅Ρ€/Π‘Ρ‡Π΅Ρ‚Ρ‡ΠΈΠΊ 2 ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ асинхронно с ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹ΠΌΠΈ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°ΠΌΠΈ/счСтчиками. ΠŸΠΎΡ‡Π΅ΠΌΡƒ это Ρ†Π΅Π½Π½ΠΎ? Одно ΠΈΠ· ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠΉ β€” счСтчик Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ (RTC). Π­Ρ‚ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² сочСтании с часовым кристаллом для отслСТивания Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΈ Π΄Π°Ρ‚Ρ‹.

Аппаратная ШИМ

ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Ρ Ρ‚Π΅ΠΌΡƒ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°/счСтчика, эти микросхСмы ΠΈΠΌΠ΅ΡŽΡ‚ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΡƒΡŽ ΡˆΠΈΡ€ΠΎΡ‚Π½ΠΎ-ΠΈΠΌΠΏΡƒΠ»ΡŒΡΠ½ΡƒΡŽ ΠΌΠΎΠ΄ΡƒΠ»ΡΡ†ΠΈΡŽ. ШИМ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ сигнал ΠΌΠ΅ΠΆΠ΄Ρƒ 0 Π’ ΠΈ VCC, часто Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΠΈ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π°Ρ Π²Ρ‹Ρ…ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠ°Ρ частота ΠΈ Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ Ρ†ΠΈΠΊΠ» (ΡΠΎΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ высокого ΠΈ Π½ΠΈΠ·ΠΊΠΎΠ³ΠΎ уровня Π·Π° ΠΎΠ΄ΠΈΠ½ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄) ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡŽΡ‚ΡΡ Π² рСгистрах, ΠΈ Π²Π°ΠΌ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ Π΄ΡƒΠΌΠ°Ρ‚ΡŒ ΠΎΠ± этом снова, ΠΏΠΎΠΊΠ° Π²Ρ‹ Π½Π΅ Π·Π°Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΈΡ… ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ. Π­Ρ‚ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ для мноТСства Π²Π΅Ρ‰Π΅ΠΉ, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ Π·Π°Ρ‚Π΅ΠΌΠ½Π΅Π½ΠΈΠ΅ свСтодиода, ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ сСрводвигатСлСм ΠΈΠ»ΠΈ созданиС Π·Π²ΡƒΠΊΠ° Π½Π° ΠΏΡŒΠ΅Π·ΠΎΡΠ»Π΅ΠΌΠ΅Π½Ρ‚Π΅.

АЦП

Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΈΠ·ΠΌΠ΅Ρ€ΠΈΡ‚ΡŒ Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Π²Π°ΠΌ Π½ΡƒΠΆΠ΅Π½ Π°Π½Π°Π»ΠΎΠ³ΠΎ-Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ. Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ микросхСм AVR ΠΈΠΌΠ΅ΡŽΡ‚ нСсколько ΠΈΠ· Π½ΠΈΡ… с Ρ€Π°Π·Π½ΠΎΠΉ ΡΡ‚Π΅ΠΏΠ΅Π½ΡŒΡŽ точности. Π­Ρ‚ΠΎ позволяСт Π²Π°ΠΌ Π΄Π΅Π»Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΈΠ΅ Π²Π΅Ρ‰ΠΈ, ΠΊΠ°ΠΊ ΠΈΠ·ΠΌΠ΅Ρ€Π΅Π½ΠΈΠ΅ уровня освСщСнности с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ фоторСзистора ΠΈ считываниС значСния ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠΎΠΌΠ΅Ρ‚Ρ€Π° (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Π΅Π³ΠΎ ΠΊΠ°ΠΊ Ρ€ΡƒΡ‡ΠΊΡƒ настройки).

USART

ATmega168 ΠΈΠΌΠ΅Π΅Ρ‚ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΉ синхронный ΠΈ асинхронный ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΡ€ΠΈΠ΅ΠΌΠ½ΠΈΠΊ ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚Ρ‡ΠΈΠΊ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΎΠ±ΠΌΠ΅Π½ΠΈΠ²Π°Ρ‚ΡŒΡΡ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ способами. Π­Ρ‚ΠΎ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΡƒΡŽ связь, Ρ‚Π°ΠΊΡƒΡŽ ​​​​как USB (с использованиСм стСка V-USB), Π° Ρ‚Π°ΠΊΠΆΠ΅ стандарты связи ΠΌΠ΅ΠΆΠ΄Ρƒ микросхСмами, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ SPI, I2C ΠΈ TWI.

SPI

БСмСйство AVR часто Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² своС ΠΎΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρ‹ связи ΡˆΠΈΠ½Ρ‹ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΠ΅Ρ€ΠΈΡ„Π΅Ρ€ΠΈΠΉΠ½ΠΎΠ³ΠΎ интСрфСйса. USART Π½Π° ATmega168 ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ основного SPI, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ для управлСния Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ микросхСмами, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ», Ρ‡Π΅Ρ€Π΅Π· Ρ‚Ρ€ΠΈ соСдинСния; Π΄Π²Π° для Π΄Π°Π½Π½Ρ‹Ρ… ΠΎΠ΄ΠΈΠ½ для часов.

I2C/TWI

USART Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ I2C ΠΈ Π΄Π²ΡƒΡ…ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π½ΠΎΠ³ΠΎ интСрфСйса. Как ΠΈ SPI, это распространСнныС ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρ‹ ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ‡ΠΈΠΏΠ°ΠΌΠΈ, Π½ΠΎ ΠΎΠ½ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄Π²Π° ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π°; ΠΎΠ΄ΠΈΠ½ для Π΄Π°Π½Π½Ρ‹Ρ…, Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ для Ρ‚Π°ΠΊΡ‚ΠΎΠ²ΠΎΠ³ΠΎ сигнала.

Аналоговый ΠΊΠΎΠΌΠΏΠ°Ρ€Π°Ρ‚ΠΎΡ€

Аналоговый ΠΊΠΎΠΌΠΏΠ°Ρ€Π°Ρ‚ΠΎΡ€ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Π΄Π²Π° Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π° для сравнСния Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²Ρ‹Ρ… сигналов. ΠžΡΠ½ΠΎΠ²Ρ‹Π²Π°ΡΡΡŒ Π½Π° ΠΈΡ… ΡΠΎΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΈ, микросхСма ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ настроСна Π½Π° срабатываниС ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠΉ, Ссли ΠΎΠ΄Π½ΠΎ ΠΈΠ· Π½ΠΈΡ… мСняСт Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с Π΄Ρ€ΡƒΠ³ΠΈΠΌ. Π”Π²Π° Π²Ρ…ΠΎΠ΄Π° ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ сопоставлСны с Π»ΡŽΠ±Ρ‹ΠΌ Π²Ρ‹Π²ΠΎΠ΄ΠΎΠΌ АЦП, Π½ΠΎ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΡ€Π°Π²Π½ΠΈΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄Π²Π° значСния. Π― Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ использовал эту Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ, ΠΈ я ΠΎΡΠ½ΠΎΠ²Ρ‹Π²Π°ΡŽ это описаниС ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π½Π° Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ я ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Π» Π² тСхничСском описании. Извини!

Π‘ΠΈΡ‚Ρ‹ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ

Π›ΡŽΠ±ΠΎΠΉ ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹ записываСтС Π² эти Ρ‡ΠΈΠΏΡ‹, ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Π½ ΠΈ сохранСн (хотя Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ возвращаСтся, являСтся ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹ΠΌ ΠΊΠΎΠ΄ΠΎΠΌ, ΠΊΠΎΠ΄ C, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΡ‹ писали, Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ идСально воспроизвСдСн ΠΈΠ· Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚Π΅ ΠΎΡ‚ Ρ‡ΠΈΠΏ). Π—Π°Ρ‚Π΅ΠΌ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для программирования Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π½Ρ‹Ρ… Ρ‡ΠΈΠΏΠΎΠ². Но Π΅ΡΡ‚ΡŒ функция, называСмая Π±ΠΈΡ‚Π°ΠΌΠΈ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ, которая ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°Ρ‰ΠΈΡ‚ΠΈΡ‚ΡŒ этот ΠΊΠΎΠ΄. ПослС установки Ρ‡ΠΈΠΏ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Π½, ΠΈ Π² зависимости ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊΠΈΠ΅ Π±ΠΈΡ‚Ρ‹ установлСны, Π΅Π³ΠΎ нСльзя Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ. Π’ΠΎ Π΅ΡΡ‚ΡŒ Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€, ΠΏΠΎΠΊΠ° Ρ‡ΠΈΠΏ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ стСрт, Ρ‡Ρ‚ΠΎ сбрасываСт эти Π±ΠΈΡ‚Ρ‹ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ.

JTAG, debugWire ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ высокого напряТСния

Π’ этом руководствС ΠΌΡ‹ использовали систСмноС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, Π½ΠΎ Π΅ΡΡ‚ΡŒ нСсколько Π΄Ρ€ΡƒΠ³ΠΈΡ… способов программирования микросхСм AVR. JTAG β€” это стандартный интСрфСйс Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠΉ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ (ΠΈ программирования), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π΅ΡΡ‚ΡŒ Ρƒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… микросхСм, Π½ΠΎ Π½Π΅ Ρƒ ATmega168. МногиС ΠΈΠ· этих микросхСм ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» debugWire для программирования ΠΈ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΠΏΡ€ΠΎΠ²ΠΎΠ΄, ΡΠΎΠ΅Π΄ΠΈΠ½ΡΡŽΡ‰ΠΈΠΉΡΡ с Π²Ρ‹Π²ΠΎΠ΄ΠΎΠΌ сброса. ΠŸΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρ‹ JTAG ΠΈ debugWire Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°ΡŽΡ‚ΡΡ с использованиСм Ρ„ΡŒΡŽΠ·-Π±ΠΈΡ‚ΠΎΠ².

Π’Ρ‹ΡΠΎΠΊΠΎΠ²ΠΎΠ»ΡŒΡ‚Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для спасСния Ρ‡ΠΈΠΏΠΎΠ², Π΄ΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ программирования. БущСствуСт Π΄Π²Π° Π²ΠΈΠ΄Π°: ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ высокого напряТСния, ΠΊΠ°ΠΊ Π² ATmega168, ΠΈΠ»ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ высокого напряТСния, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ микросхСмы с ΠΌΠ°Π»Ρ‹ΠΌ числом Π²Ρ‹Π²ΠΎΠ΄ΠΎΠ². Если Π²Ρ‹ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ Reset ΠΈΠ»ΠΈ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ debugWire, ΠΈΠ»ΠΈ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ установитС источник Ρ‚Π°ΠΊΡ‚ΠΎΠ²ΠΎΠ³ΠΎ сигнала Π² настройках Ρ„ΡŒΡŽΠ·Π°, HVPP ΠΈΠ»ΠΈ HVSP Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΠ±Ρ€ΠΎΡΠΈΡ‚ΡŒ Ρ„ΡŒΡŽΠ·Ρ‹ ΠΈ спасти Β«Π·Π°ΠΌΡƒΡ€ΠΎΠ²Π°Π½Π½ΡƒΡŽΒ» микросхСму.

alexxlab

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *