рд╕рд░реВ рдпреВрдбреАрдмреА рдорд╛рдЗрдХреНрд░реЛрдХрдВрдЯреНрд░реЛрд▓рд░реНрд╕ рдкреАрдПрд╕рдУрд╕реА рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЖрд░рдЬреАрдмреА рдПрд▓рдИрдбреА рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рддрд╛ рд╣реИ



рдкрд░рд┐рдЪрдп


рдореИрдВ рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ рд╕рд░реВ рдкреАрдПрд╕рдУрд╕реА рдирд┐рдпрдВрддреНрд░рдХреЛрдВ рдореЗрдВ рдпреВрдбреАрдмреА рдмреНрд▓реЙрдХреЛрдВ рдХреА рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреА рддрдХрдиреАрдХ рд╕реАрдЦрдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛, рд▓реЗрдХрд┐рди рдХрд┐рд╕реА рддрд░рд╣ рдореЗрд░реЗ рд╕рднреА рд╣рд╛рде рдирд╣реАрдВ рдкрд╣реБрдВрдЪреЗред рдФрд░ рдЗрд╕рд▓рд┐рдП, рдПрдХ рд╕рдорд╕реНрдпрд╛ рдЙрддреНрдкрдиреНрди рд╣реБрдИ рдЬрд┐рд╕ рдкрд░ рдпрд╣ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдиреЗрдЯрд╡рд░реНрдХ рд╕реЗ рд╕рд╛рдордЧреНрд░рд┐рдпреЛрдВ рдХреЛ рд╕рдордЭрдирд╛, рдореИрдВрдиреЗ рдорд╣рд╕реВрд╕ рдХрд┐рдпрд╛ рдХрд┐ UDB рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд╕рд┐рдлрд╛рд░рд┐рд╢реЗрдВ рдХрд╛рдЙрдВрдЯрд░рд░реНрд╕ рдФрд░ PWM рдХреЗ рд╡рд┐рднрд┐рдиреНрди рд░реВрдкреЛрдВ рддрдХ рд╕реАрдорд┐рдд рд╣реИрдВред рдХрд┐рд╕реА рдХрд╛рд░рдг рдХреЗ рд▓рд┐рдП, рд╕рднреА рд▓реЗрдЦрдХ рдЗрди рджреЛ рд╡рд┐рд╣рд┐рдд рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЗ рдЕрдкрдиреЗ рд░реВрдкрд╛рдВрддрд░ рдХрд░рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдХреБрдЫ рдФрд░ рдХрд╛ рд╡рд░реНрдгрди рдкрд╛рдардХреЛрдВ рдХреЗ рд▓рд┐рдП рджрд┐рд▓рдЪрд╕реНрдк рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

So. WS2812B RGB LED рдХреА рд▓рдВрдмреА рд▓рд╛рдЗрди рдХреЛ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдорд╕реНрдпрд╛ рдереАред рдЗрд╕ рдорд╛рдорд▓реЗ рдХреЗ рд╢рд╛рд╕реНрддреНрд░реАрдп рджреГрд╖реНрдЯрд┐рдХреЛрдг рдЬреНрдЮрд╛рдд рд╣реИрдВред рдЖрдк рддреБрдЪреНрдЫ Arduino рд▓реЗ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╡рд╣рд╛рдВ рдЖрдЙрдЯрдкреБрдЯ рдкреНрд░реЛрдЧреНрд░рд╛рдореЗрдЯрд┐рдХ рд░реВрдк рд╕реЗ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЬрдм рдбреЗрдЯрд╛ рдЖрдЙрдЯрдкреБрдЯ рд╣реЛ рд░рд╣рд╛ рд╣реИ, рддреЛ рдмрд╛рдХреА рд╕рдм рдмреЗрдХрд╛рд░ рд╣реИ, рдЕрдиреНрдпрдерд╛ рд╕рдордп рдЖрд░реЗрдЦ рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред рдЖрдк рдПрд╕рдЯреАрдПрдо 32 рдФрд░ рдЖрдЙрдЯрдкреБрдЯ рдбреЗрдЯрд╛ рдХреЛ рдбреАрдПрдордП рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреАрдбрдмреНрд▓реВрдПрдо рдпрд╛ рдбреАрдПрдордП рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрд╕рдкреАрдЖрдИ рддрдХ рд▓реЗ рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВред рддрдХрдиреАрдХреЗрдВ рдЬрд╛рдиреА рдЬрд╛рддреА рд╣реИрдВред рдореИрдВрдиреЗ рднреА, рдПрдХ рд╕рдордп рдореЗрдВ, рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ SPI рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реЛрд▓рд╣ рдбрд╛рдпреЛрдб рдХреА рдПрдХ рдкрдВрдХреНрддрд┐ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд┐рдпрд╛ рдерд╛ред рд▓реЗрдХрд┐рди рдЙрдкрд░рд┐ рдорд╣рд╛рди рд╣реИред рдПрд▓рдИрдбреА рдореЗрдВ рдПрдХ рдбреЗрдЯрд╛ рдмрд┐рдЯ рдПрд╕рдкреАрдЖрдИ рдХреЗ рд▓рд┐рдП рдкреАрдбрдмреНрд▓реВрдПрдо рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ 3 рд╕реЗ 4 рдмрд┐рдЯреНрд╕ рдФрд░ 3 рд╕реЗ 4 рдмрд┐рдЯреНрд╕ (рдХрдВрдЯреНрд░реЛрд▓рд░ рдореЗрдВ рдкреАрдПрд▓рдПрд▓ рдардВрдбрдХ рдХреЗ рдЖрдзрд╛рд░ рдкрд░) рдХреЗ рд▓рд┐рдП 8 рдмрд┐рдЯреНрд╕ рд░рдЦрддрд╛ рд╣реИред рдЬрдмрдХрд┐ рдХреБрдЫ рдПрд▓ рдИ рдбреА рд╣реИрдВ, рдпрд╣ рдбрд░рд╛рд╡рдирд╛ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдХрд╣рддреЗ рд╣реИрдВ, рд╕реМ рдХреЗ рдПрдХ рдЬреЛрдбрд╝реЗ, рддреЛ 200 * 24 = 4800 рдмрд┐рдЯреНрд╕ = 600 рдмрд╛рдЗрдЯ рдЙрдкрдпреЛрдЧреА рдбреЗрдЯрд╛ рдХреЛ рдмрдлрд░ рдореЗрдВ рдкреАрдбрдмреНрд▓реВрдПрдо рд╡рд┐рдХрд▓реНрдк рдХреЗ рд▓рд┐рдП 4 рдХрд┐рд▓реЛрдмрд╛рдЗрдЯ рд╕реЗ рдЕрдзрд┐рдХ рдпрд╛ рдПрд╕рдкреАрдЖрдИ рдХреЗ рд▓рд┐рдП 2 рдХрд┐рд▓реЛрдмрд╛рдЗрдЯ рд╕реЗ рдЕрдзрд┐рдХ рдХреА рдХреНрд╖рдорддрд╛ рдХреЗ рд╕рд╛рде рднреМрддрд┐рдХ рд░реВрдк рд╕реЗ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рд╡рд┐рдХрд▓реНрдкред рдмрдлрд╝рд░реНрд╕ рдХреЗ рдЧрддрд┐рд╢реАрд▓ рд╕рдВрдХреЗрдд рдХреЗ рд▓рд┐рдП, рдХрдИ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдФрд░ STM32F103 рдореЗрдВ рд╕рдм рдХреБрдЫ 20 рдХрд┐рд▓реЛрдмрд╛рдЗрдЯ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рдм рдХреБрдЫ рдХреЗ рд▓рд┐рдП рд░реИрдо рд╣реИред рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╣рдо рдПрдХ рдЕрд╡рд╛рд╕реНрддрд╡рд┐рдХ рдХрд╛рд░реНрдп рдореЗрдВ рднрд╛рдЧ рдЧрдП рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдЬрд╛рдВрдЪрдиреЗ рдХрд╛ рдПрдХ рдХрд╛рд░рдг рдХрд┐ рдХреНрдпрд╛ рдЕрддрд┐рд░рд┐рдХреНрдд рд░реИрдо рдЦрд░реНрдЪ рдХрд┐рдП рдмрд┐рдирд╛ PSoC рдкрд░ рдЗрд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдХрд╛рдлреА рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред

рд╕рд┐рджреНрдзрд╛рдВрдд


рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдЖрдЗрдП рдЬрд╛рдиреЗрдВ рдХрд┐ рдРрд╕реЗ рдпреВрдбреАрдмреА рдХрд┐рд╕ рдкреНрд░рдХрд╛рд░ рдХреЗ рдЬрд╛рдирд╡рд░ рд╣реИрдВ рдФрд░ рд╡реЗ рдЗрд╕рдХреЗ рд╕рд╛рде рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред рдирд┐рдпрдВрддреНрд░рдХ рдирд┐рд░реНрдорд╛рддрд╛ рд╕реЗ рдЕрджреНрднреБрдд рдирд┐рд░реНрджреЗрд╢рд╛рддреНрдордХ рдлрд┐рд▓реНрдореЗрдВ рдЗрд╕рдореЗрдВ рдорджрдж рдХрд░реЗрдВрдЧреАред

рдЖрдкрдХреЛ рдпрд╣рд╛рдВ рд╕реЗ рджреЗрдЦрдирд╛ рд╢реБрд░реВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рдФрд░ рдлрд┐рд░ рдкреНрд░рддреНрдпреЗрдХ рд╡реАрдбрд┐рдпреЛ рдХреЗ рдЕрдВрдд рдореЗрдВ рдЕрдЧрд▓реА рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рд▓рд┐рдВрдХ рд╣реЛрдЧрд╛ред рдХрджрдо рд╕реЗ рдХрджрдо, рдЖрдк рдмреБрдирд┐рдпрд╛рджреА рдЬреНрдЮрд╛рди рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВрдЧреЗ рдФрд░ рд╡рд┐рд╣рд┐рдд рдЙрджрд╛рд╣рд░рдг "рдХрд╛рдЙрдВрдЯрд░" рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВрдЧреЗред рдЦреИрд░, рдФрд░ рдПрдХ рдпрд╛рддрд╛рдпрд╛рдд рдкреНрд░рдХрд╛рд╢ рдирд┐рдпрдВрддреНрд░рдг рдкреНрд░рдгрд╛рд▓реАред

рдЙрд╕реА рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ, рд▓реЗрдХрд┐рди рдЫреЛрдЯреЗ рдЯреБрдХрдбрд╝реЛрдВ рдореЗрдВ рдХрд╛рдЯреЗрдВ, рдЖрдк рдпрд╣рд╛рдВ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ ред рдореЗрд░рд╛ рд╡реАрдбрд┐рдпреЛ рдирд╣реАрдВ рдЪрд▓рд╛, рд▓реЗрдХрд┐рди рдЗрд╕реЗ рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдФрд░ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЕрдиреНрдп рдмрд╛рддреЛрдВ рдХреЗ рдЕрд▓рд╛рд╡рд╛, PWM рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрд╛ рдПрдХ рд╡рд┐рд╣рд┐рдд рдЙрджрд╛рд╣рд░рдг рднреА рд╣реИред

рд╕рдорд╛рдкреНрдд рд╕рдорд╛рдзрд╛рди


рдкрд╣рд┐рдпрд╛ рдХреЛ рд╕реБрджреГрдврд╝ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ (рдФрд░ рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд - рдХрд┐рд╕реА рдФрд░ рдХреЗ рдЕрдиреБрднрд╡ рд╕реЗ рдХрд╛рд░реНрдпрдкреНрд░рдгрд╛рд▓реА рдЬрд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП), рдореИрдВрдиреЗ рдЖрд░рдЬреАрдмреА рдПрд▓рдИрдбреА рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╕рдорд╛рдзрд╛рди рдХреА рддрд▓рд╛рд╢ рдореЗрдВ рдиреЗрдЯрд╡рд░реНрдХ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЕрдлрд╡рд╛рд╣ рдЙрдбрд╝рд╛рдИред рд╕рдмрд╕реЗ рд▓реЛрдХрдкреНрд░рд┐рдп рд╕рдорд╛рдзрд╛рди StripLightLib.cylib рд╣реИред рд▓реЗрдХрд┐рди рдЕрдм рдХрдИ рд╕рд╛рд▓реЛрдВ рд╕реЗ рдЙрдирдХреЗ рдкрд╛рд╕ рдРрдб рдбреАрдПрдордП рд╕рдорд░реНрдерди рдЬреЛрдбрд╝рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рд╣реИред рд▓реЗрдХрд┐рди рдореИрдВ рдРрд╕реЗ рд╕рдорд╛рдзрд╛рди рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдЬреЛ рдХреЗрдВрджреНрд░реАрдп рдкреНрд░реЛрд╕реЗрд╕рд░ рдкрд░ рдирд┐рд░реНрднрд░ рди рд╣реЛред рдореИрдВ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╢реБрд░реВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдФрд░ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рднреВрд▓ рдЬрд╛рддрд╛ рд╣реВрдВ, рдЕрдЧрд▓реЗ рдлреНрд░реЗрдо рдХреА рддреИрдпрд╛рд░реА рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░ рд░рд╣рд╛ рд╣реВрдВред

рдореЗрд░реА рдЗрдЪреНрдЫрд╛рдУрдВ рдХреЗ рдЕрдиреБрдХреВрд▓ рд╕рдорд╛рдзрд╛рди https://github.com/PolyVinalDistillate/PSoC_DMA_NeoPixel рдкрд░ рдорд┐рд▓рд╛ред

UDB рдкрд░ рд╡рд╣рд╛рдВ рд╕рдм рдХреБрдЫ рд▓рд╛рдЧреВ рд╣реИ (рд▓реЗрдХрд┐рди LED рдХреЗрд╡рд▓ рдПрдХ рдмрд╣рд╛рдирд╛ рд╣реИ, рд▓рдХреНрд╖реНрдп UDB рд╕реАрдЦрдирд╛ рд╣реИ)ред рдбреАрдПрдордП рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рд╣реИред рдФрд░ рд╡рд╣рд╛рдВ рдХреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЦреВрдмрд╕реВрд░рддреА рд╕реЗ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рд╣реИред

рдЖрдзрд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ рдЪреБрдиреЗ рдЧрдП рд╕рдорд╛рдзрд╛рди рдХреА рд╕рдорд╕реНрдпрд╛рдПрдВ


PSoC_DMA_NeoPixel рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ "рдлрд░реНрдорд╡реЗрдпрд░" рдХреИрд╕реЗ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреЛ рд▓реЛрдЧ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рд╡рд╣ рд▓реЗрдЦ рдкрдврд╝рдиреЗ рдХреЗ рдмрд╛рдж рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕рд╕реЗ рд╕рд╛рдордЧреНрд░реА рдареАрдХ рд╣реЛ рдЬрд╛рдПрдЧреАред рдЕрднреА рдХреЗ рд▓рд┐рдП, рдореИрдВ рдХреЗрд╡рд▓ рдпрд╣реА рдХрд╣реВрдВрдЧрд╛ рдХрд┐ рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рдЙрдкрднреЛрдЧ рдХрд┐рдП рдЧрдП рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЛ рдХрдо рдХрд┐рдП рдмрд┐рдирд╛ рдореВрд▓ рдлрд░реНрдорд╡реЗрдпрд░ рдХреЗ рддрд░реНрдХ рдХреЛ рд╕рд░рд▓ рдмрдирд╛рдпрд╛ (рд▓реЗрдХрд┐рди рдЗрд╕реЗ рд╕рдордЭрдирд╛ рдЖрд╕рд╛рди рд╣реЛ рдЧрдпрд╛ рд╣реИ)ред рдлрд┐рд░ рдЙрдиреНрд╣реЛрдВрдиреЗ рдСрдЯреЛрдореЗрдЯрди рд▓реЙрдЬрд┐рдХ рдХреЛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд╕рд╛рде рдкреНрд░рдпреЛрдЧ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд┐рдпрд╛, рдЬрд┐рд╕рдиреЗ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдореЗрдВ рд▓рд╛рдн рдХрд╛ рд╡рд╛рджрд╛ рдХрд┐рдпрд╛, рд▓реЗрдХрд┐рди рдПрдХ рдЧрдВрднреАрд░ рд╕рдорд╕реНрдпрд╛ рдореЗрдВ рднрд╛рдЧ рдЧрдпрд╛ред рдФрд░ рдЗрд╕рд▓рд┐рдП рдЙрдиреНрд╣реЛрдВрдиреЗ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ - рдпрд╣ рд╕рдорд╛рдкреНрдд рдирд╣реАрдВ рд╣реБрдЖ рд╣реИ! рдФрд░ рдЕрд╕реНрдкрд╖реНрдЯ рд╕рдВрджреЗрд╣ рдореБрдЭреЗ рд╕рддрд╛рдиреЗ рд▓рдЧреЗ: рдХреНрдпрд╛ рдЕрдВрдЧреНрд░реЗрдЬреА рд▓реЗрдЦрдХ рдХреЛ рднреА рдпрд╣реА рд╕рдорд╕реНрдпрд╛ рдереА? рдЙрд╕рдХрд╛ рдбреЗрдореЛ рдПрд▓ рдИ рдбреА рдХреЗ рд╕рд╛рде рдмрд╣реБрдд рдЦреВрдмрд╕реВрд░рддреА рд╕реЗ рдЭрдкрдХрд╛рддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдХреНрдпрд╛ рд╣реЛрдЧрд╛ рдЕрдЧрд░ рд╣рдо "рд╕рднреА рдЗрдХрд╛рдЗрдпреЛрдВ" рдХреЗ рд╕рд╛рде рд╕реБрдВрджрд░ рднрд░рдиреЗ рдХреЛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЖрдЙрдЯрдкреБрдЯ рдХреЛ рд╣рдорд╛рд░реА рдЖрдВрдЦреЛрдВ рд╕реЗ рдирд╣реАрдВ, рдмрд▓реНрдХрд┐ рдПрдХ рдЖрд╕реНрдЯрд╕реАрд▓рд╕реНрдХрдк рд╕реЗ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВ?
рдЗрд╕рд▓рд┐рдП, рдЬрд┐рддрдирд╛ рд╕рдВрднрд╡ рд╣реЛ рд╕рдХреЗ рдЙрддрдиреЗ рдЕрдзрд┐рдХ (рдЖрдк "рдХреНрд░реВрд░рддрд╛рдкреВрд░реНрд╡рдХ" рднреА рдХрд╣ рд╕рдХрддреЗ рд╣реИрдВ) рд╣рдо рдбреЗрдЯрд╛ рдмрдирд╛рддреЗ рд╣реИрдВ:

memset (pPixelArray,0xff,sizeof(pPixelArray)); //Call NeoPixel update function (non blocking) to trigger DMA pixel update NP_Update(); 

рдФрд░ рдпрд╣рд╛рдБ рд╣рдо рдПрдХ рдЖрд╕реНрдЯрд╕реАрд▓рд╕реНрдХрдк рдкрд░ рдРрд╕реА рддрд╕реНрд╡реАрд░ рджреЗрдЦрддреЗ рд╣реИрдВ:



рдкрд╣рд▓реЗ рдмрд┐рдЯ рдореЗрдВ рдмрд╛рдХреА рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдПрдХ рдЕрд▓рдЧ рдЪреМрдбрд╝рд╛рдИ рд╣реИред рдореИрдВрдиреЗ рд╕рднреА рдЗрдХрд╛рдЗрдпреЛрдВ рдХреЛ рднреЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣рд╛, рд▓реЗрдХрд┐рди рд╕рднреА рдХреЛ рдирд╣реАрдВ рдЫреЛрдбрд╝рд╛ред рдЙрдирдореЗрдВ рд╕реЗ рд╢реВрдиреНрдп рдмрд╛рд╣рд░! рд╕реНрдХреИрди рдмрджрд▓реЗрдВ:



рдЪреМрдбрд╝рд╛рдИ рд╣рд░ рдЖрдард╡реЗрдВ рдмрд┐рдЯ рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ рд╣реИред

рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдПрдХ рд╕реНрд╡рддрдВрддреНрд░ рд╕рдорд╛рдзрд╛рди рдХреЗ рд░реВрдк рдореЗрдВ рдпрд╣ рдЙрджрд╛рд╣рд░рдг рдЙрдкрдпреБрдХреНрдд рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдкреНрд░реЗрд░рдгрд╛ рдХреЗ рд╕реНрд░реЛрдд рдХреЗ рд░реВрдк рдореЗрдВ - рдПрдХрджрдо рд╕рд╣реА рд╣реИред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдЗрд╕рдХреА рдирд┐рд╖реНрдХреНрд░рд┐рдпрддрд╛ рдЖрдВрдЦ рдХреЗ рд╕рд╛рде рджрд┐рдЦрд╛рдИ рдирд╣реАрдВ рджреЗрддреА рд╣реИ (рдПрд▓ рдИ рдбреА рдЕрднреА рднреА рдЙрдЬреНрдЬреНрд╡рд▓ рд╣реИрдВ, рдЖрдВрдЦ рдпрд╣ рдирд╣реАрдВ рджреЗрдЦрддреА рд╣реИ рдХрд┐ рд╡реЗ рдЕрдзрд┐рдХрддрдо рдЖрдзреЗ рдкрд░ рдЪрдордХрддреЗ рд╣реИрдВ), рд▓реЗрдХрд┐рди рдХреЛрдб рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╕рдВрд░рдЪрд┐рдд рд╣реИ, рдЗрд╕реЗ рдЖрдзрд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ рд▓реЗрдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реИред рджреВрд╕рд░реЗ, рдпрд╣ рдЙрджрд╛рд╣рд░рдг рд╕рд░рд▓ рдмрдирд╛рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрдерд╛рди рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рдФрд░ рддреАрд╕рд░рд╛, рдпрд╣ рдЖрдкрдХреЛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рджреЛрд╖ рдХреЛ рдХреИрд╕реЗ рдареАрдХ рдХрд┐рдпрд╛ рдЬрд╛рдПред рдмрд╣реБрдд рд╕реА рдмрд╛рдд рдордЯреЗрд░рд┐рдпрд▓ рдХреЛ рд╕рдордЭрдирд╛ рд╣реИ! рдЗрд╕рд▓рд┐рдП рдПрдХ рдмрд╛рд░ рдлрд┐рд░, рд▓реЗрдЦ рдХреЛ рдкрдврд╝рдиреЗ рдХреЗ рдмрд╛рдж, рдореИрдВ рдореВрд▓ рдЙрджрд╛рд╣рд░рдг рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдпрд╣ рдорд╣рд╕реВрд╕ рдХрд░рддреЗ рд╣реБрдП рдХрд┐ рдпрд╣ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рднрд╛рдЧ


рдЕрдм рд╣рдо рдЕрднреНрдпрд╛рд╕ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВред рд╣рдо рдпреВрдбреАрдмреА рдХреЗ рд▓рд┐рдП рдлрд░реНрдорд╡реЗрдпрд░ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдХреЗ рдореБрдЦреНрдп рдкрд╣рд▓реБрдУрдВ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░ рд░рд╣реЗ рд╣реИрдВред рд░рд┐рд╢реНрддреЗ рдФрд░ рдмреБрдирд┐рдпрд╛рджреА рддрдХрдиреАрдХреЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдореЗрд░рд╛ рд╕рдВрд╕реНрдХрд░рдг рдЦреЛрд▓реЗрдВред рд▓реЗрдлреНрдЯ рдмреНрд▓реЙрдХ рдХрд╛рдо рдХреА рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддрд╛ рд╣реИред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, рд╕реНрд░реЛрдд рдЯреИрдм рдЦреБрд▓рд╛ рд╣реИред рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдореБрдЦреНрдп рд╕реНрд░реЛрдд main.c рдлрд╝рд╛рдЗрд▓ рд╣реИред рджрд░рдЕрд╕рд▓, рд╕реЛрд░реНрд╕ рдлрд╛рдЗрд▓реНрд╕ рдЧреНрд░реБрдк рдореЗрдВ рдХреЛрдИ рджреВрд╕рд░реА рд╡рд░реНрдХрд┐рдВрдЧ рдлрд╛рдЗрд▓ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИред



рдЙрддреНрдкрдиреНрди рд╕реНрд░реЛрдд рд╕рдореВрд╣ рдореЗрдВ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдлрд╝рдВрдХреНрд╢рдВрд╕ рд╣реЛрддреЗ рд╣реИрдВред рдЙрдиреНрд╣реЗрдВ рд╕рдВрдкрд╛рджрд┐рдд рди рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реИред UDB рдХреЗ "рдлрд░реНрдорд╡реЗрдпрд░" рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рдкрд░рд┐рд╡рд░реНрддрди рдХреЗ рдмрд╛рдж, рдЗрд╕ рд╕рдореВрд╣ рдХреЛ рдкреБрдирд░реНрдЬреАрд╡рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рддреЛ, рдЗрд╕ idyll рдореЗрдВ UDB рдХреЗ рд▓рд┐рдП рдХреЛрдб рдХрд╛ рд╡рд░реНрдгрди рдХрд╣рд╛рдБ рд╣реИ? рдЗрд╕реЗ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдШрдЯрдХ рдЯреИрдм рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░рдирд╛ рд╣реЛрдЧрд╛:



рдореВрд▓ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓реЗрдЦрдХ рдиреЗ рдШрдЯрдХреЛрдВ рдХреЗ рджреЛ-рд╕реНрддрд░реАрдп рд╕реЗрдЯ рдХрд┐рдПред рд╢реАрд░реНрд╖ рд╕реНрддрд░ рдкрд░ NeoPixel_v1_2.cysch рд╕рд░реНрдХрд┐рдЯ рд╣реИред рдЗрд╕реЗ рдореБрдЦреНрдп рдпреЛрдЬрдирд╛ рд╕реЗ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:



рдШрдЯрдХ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИ:



рдЗрд╕ рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рд╕рдорд░реНрдерди рдкрд░ рдмрд╛рдж рдореЗрдВ рдЪрд░реНрдЪрд╛ рдХреА рдЬрд╛рдПрдЧреАред рдЗрд╕ рдмреАрдЪ, рдкрддрд╛ рдХрд░реЗрдВ рдХрд┐ рдпрд╣ рд╕реНрд╡рдпрдВ рдПрдХ рдирд┐рдпрдорд┐рдд рдбреАрдПрдордП рдЗрдХрд╛рдИ рдФрд░ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдкреНрд░рддреАрдХ NeoPixDrv_v1 рд╣реИ ред рдпрд╣ рд░рд╣рд╕реНрдпрдордп рдмреНрд▓реЙрдХ рдкреЗрдбрд╝ рдореЗрдВ рдКрдкрд░ рд╡рд░реНрдгрд┐рдд рд╣реИ, рдЬреЛ рдирд┐рдореНрди рдЯреВрд▓рдЯрд┐рдк рд╕реЗ рдЖрддрд╛ рд╣реИ:



"рдлрд░реНрдорд╡реЗрдпрд░" UDB


рдЙрд╕ рдШрдЯрдХ рдХреЛ рдЦреЛрд▓реЗрдВ (рдПрдХреНрд╕рдЯреЗрдВрд╢рди .cyudb рдХреЗ рд╕рд╛рде рдлрд╝рд╛рдЗрд▓)ред рдЦреЛрд▓реА рдЧрдИ рдбреНрд░рд╛рдЗрдВрдЧ рдмрд╕ рд╡рд┐рд╢рд╛рд▓ рд╣реИред рд╣рдо рд╕рдордЭрдиреЗ рд▓рдЧрддреЗ рд╣реИрдВ рдХрд┐ рдХреНрдпрд╛ рд╣реИред



рдореВрд▓ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓реЗрдЦрдХ рдХреЗ рд╡рд┐рдкрд░реАрдд, рдореИрдВ рддреАрди рд╕рдорд╛рди (рд╕рдордп рдореЗрдВ) рднрд╛рдЧреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдмрд┐рдЯ рдбреЗрдЯрд╛ рдХреЗ рд╕рдВрдЪрд░рдг рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рддрд╛ рд╣реВрдВ:

  1. рдкреНрд░рд╛рд░рдВрднрд┐рдХ рднрд╛рдЧ (рд╣рдореЗрд╢рд╛ 1)
  2. рдбреЗрдЯрд╛ рдкрд╛рд░реНрдЯ
  3. рдмрдВрдж рдХрд░реЛ рд╣рд┐рд╕реНрд╕рд╛ (рд╣рдореЗрд╢рд╛ 0)

рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рд╕рд╛рде, рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдХрд╛рдЙрдВрдЯрд░реЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИ (рдореВрд▓ рдореЗрдВ рддреАрди рдЯреБрдХрдбрд╝реЗ рдХреЗ рд░реВрдк рдореЗрдВ рдХрдИ рдереЗ, рдЬреЛ рдмрдбрд╝реА рдорд╛рддреНрд░рд╛ рдореЗрдВ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХрд╛ рдЙрдкрднреЛрдЧ рдХрд░рддреЗ рдереЗ)ред рд╕рднреА рднрд╛рдЧреЛрдВ рдХреА рдЕрд╡рдзрд┐ рд╕рдорд╛рди рд╣реИ рдФрд░ рдЗрд╕реЗ рдПрдХ рд░рдЬрд┐рд╕реНрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдлрд╝рд░реНрдорд╡реЗрдпрд░ рдХреЗ рдЯреНрд░рд╛рдВрдЬрд╝рд┐рд╢рди рдЧреНрд░рд╛рдл рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЕрд╡рд╕реНрдерд╛рдПрдБ рд╣реИрдВ:

рдирд┐рд╖реНрдХреНрд░рд┐рдп рдЕрд╡рд╕реНрдерд╛ред FIFO рдореЗрдВ рдирдпрд╛ рдбреЗрдЯрд╛ рдЖрдиреЗ рддрдХ рдорд╢реАрди рдЗрд╕рдореЗрдВ рд▓рдЧреА рд░рд╣рддреА рд╣реИред



рдкреНрд░рд╢рд┐рдХреНрд╖рдг рд╡реАрдбрд┐рдпреЛ рд╕реЗ, рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рдерд╛ рдХрд┐ рдорд╢реАрди рдХреА рд╕реНрдерд┐рддрд┐ ALU рд╕реЗ рдХреИрд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИред рд▓реЗрдЦрдХ рд╕рдВрдЪрд╛рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдмреЗрд╢рдХ рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдореИрдВ, рдПрдХ рд╢реБрд░реБрдЖрдд рдХреЗ рд░реВрдк рдореЗрдВ, рдЗрд╕реЗ рддреБрд░рдВрдд рдирд╣реАрдВ рджреЗрдЦ рд╕рдХрддрд╛ рдерд╛ред рдЖрдЗрдП рдЗрд╕реЗ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рджреЗрдЦреЗрдВред рдКрдкрд░ рджрд┐рдП рдЧрдП рдЖрдВрдХрдбрд╝реЗ рд╕реЗ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ рдЖрдЗрдбрд▓ рд░рд╛рдЬреНрдп 1'b0 рдорд╛рди рдХреЗ рд╕рд╛рде рдПрдиреНрдХреЛрдбреЗрдб рд╣реИред 3'b000 рдЕрдзрд┐рдХ рд╕рд╣реА рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рд╕рдВрдкрд╛рджрдХ рд╕рдм рдХреБрдЫ рдПрдХ рд╕рдорд╛рди рдХрд░реЗрдЧрд╛ред рджрддреНрддрдкрд╛рда рдмреНрд▓реЙрдХ рдХреЗ рдЗрдирдкреБрдЯ рдЗрд╕ рддрд░рд╣ рд╡рд░реНрдгрд┐рдд рд╣реИрдВ:



рдпрджрд┐ рдЖрдк рдЙрди рдкрд░ рдбрдмрд▓-рдХреНрд▓рд┐рдХ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдПрдХ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддреГрдд рд╕рдВрд╕реНрдХрд░рдг рджрд┐рдЦрд╛рдИ рджреЗрдЧрд╛:



рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реИ рдХрд┐ ALU рдирд┐рд░реНрджреЗрд╢ рдХреЗ рдкрддреЗ рдХрд╛ рд╢реВрдиреНрдп рдмрд┐рдЯ рдЙрд╕ рдЪрд░ рдХреЗ рд╢реВрдиреНрдп рдмрд┐рдЯ рд╕реЗ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИ рдЬреЛ рдорд╢реАрди рдХреА рд╕реНрдерд┐рддрд┐ рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИред рдкрд╣рд▓рд╛ рдкрд╣рд▓рд╛ рд╣реИ, рджреВрд╕рд░рд╛ рджреВрд╕рд░рд╛ рд╣реИред рдпрджрд┐ рд╡рд╛рдВрдЫрд┐рдд рд╣реИ, рддреЛ рдХрд┐рд╕реА рднреА рдЪрд░ рдФрд░ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдХреЛ ALU рдирд┐рд░реНрджреЗрд╢ рдХреЗ рдкрддреЗ рдмрд┐рдЯреНрд╕ рд╕реЗ рдорд┐рд▓рд╛рди рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ (рдореВрд▓ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ, ALU рдирд┐рд░реНрджреЗрд╢ рдХреЗ рдкрддреЗ рдХреЗ рджреВрд╕рд░реЗ рдмрд┐рдЯ рдХреЛ рдПрдХ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐, рдЕрддрд┐рд░рд┐рдХреНрдд рд░реВрдк рд╕реЗ рдорд┐рд▓рд╛рди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рд╡рд░реНрддрдорд╛рди рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдЗрд╕рдХрд╛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдорд╕реНрддрд┐рд╖реНрдХ-рдЙрджрд╛рд╣рд░рдг рдХреЗ рд░реВрдк рдореЗрдВ рдмрд╣реБрдд рд╕реНрдкрд╖реНрдЯ рд╣реИ, рдлрд┐рд░ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ)ред

So. рдЗрдирдкреБрдЯ рдХреА рд╡рд░реНрддрдорд╛рди рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЗ рд╕рд╛рде, рдЬреЛ рдорд╢реАрди рдХрд╛ рджреНрд╡рд┐рдЖрдзрд╛рд░реА рд╕реНрдерд┐рддрд┐ рдХреЛрдб рд╣реИ, рдЗрд╕ рддрд░рд╣ рдХреЗ рдПрдПрд▓рдпреВ рдирд┐рд░реНрджреЗрд╢ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЬрдм рд╣рдо Idle рд░рд╛рдЬреНрдп рдореЗрдВ рдХреЛрдб 000 рд░рдЦрддреЗ рд╣реИрдВ, рддреЛ рд╢реВрдиреНрдп рдирд┐рд░реНрджреЗрд╢ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣рд╛рдБ рдпрд╣ рд╣реИ:



рдореБрдЭреЗ рдЗрд╕ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рд╕реЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдкрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдкреНрд░рддрд┐рдмрдВрдзрд╛рддреНрдордХ рдПрдирдУрдкреА рд╣реИред рд▓реЗрдХрд┐рди рдЖрдк рдЗрд╕ рдкрд░ рдбрдмрд▓ рдХреНрд▓рд┐рдХ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдкреВрд░рд╛ рд╕рдВрд╕реНрдХрд░рдг рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ:



рд╣рд░ рдЬрдЧрд╣ рдПрдирдУрдкреА рдЦреБрджреЗ рд╣реБрдП рд╣реИрдВред рд░рдЬрд┐рд╕реНрдЯрд░ рдХрд┐рд╕реА рднреА рдЪреАрдЬрд╝ рд╕реЗ рдЖрдмрд╛рдж рдирд╣реАрдВ рд╣реИрдВред

рдЕрдм рдЖрдЗрдП рдЬрд╛рдиреЗрдВ рдХрд┐ рдХрд┐рд╕ рддрд░рд╣ рдХрд╛ рд░рд╣рд╕реНрдпрдордпреА рдЭрдВрдбрд╛ рд╣реИ ! рдиреЙрдЯрдбрд╛рдЯрд╛ , рдорд╢реАрди рдХреЛ рдмреЗрдХрд╛рд░ рдХреА рд╕реНрдерд┐рддрд┐ рдЫреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд░рддрд╛ рд╣реИред рдпрд╣ рджрддрдкрдд рдмреНрд▓реЙрдХ рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓рдирд╛ рд╣реИред рдХреБрд▓ рдореЗрдВ, рдЫрд╣ рдирд┐рдХрд╛рд╕ рддрдХ рд╡рд░реНрдгрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдпрд╣ рд╕рд┐рд░реНрдл рдЗрддрдирд╛ рд╣реИ рдХрд┐ рджрддреНрддрдкрде рдмрд╣реБрдд рдЕрдзрд┐рдХ рдЭрдВрдбреЗ рдХрд╛ рдЙрддреНрдкрд╛рджрди рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╕рднреА рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдЯреНрд░реЗрд╕ рд╕рдВрд╕рд╛рдзрди рдирд╣реАрдВ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рд╣рдореЗрдВ рдпрд╣ рдЪреБрдирдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреМрди рд╕реЗ рдЫрд╣ (рдпрд╛ рдХрдо) рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдпрд╣рд╛рдБ рдЖрдВрдХрдбрд╝рд╛ рдореЗрдВ рд╕реВрдЪреА рд╣реИ:



рдпрджрд┐ рдЖрдк рдЗрд╕ рдкрд░ рдбрдмрд▓-рдХреНрд▓рд┐рдХ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╡рд┐рд╡рд░рдг рд╕рд╛рдордиреЗ рдЖрдПрдЧрд╛:



рдпрд╣рд╛рдВ рдЙрди рдЭрдВрдбреЛрдВ рдХреА рдкреВрд░реА рд╕реВрдЪреА рджреА рдЧрдИ рд╣реИ рдЬрд┐рдиреНрд╣реЗрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:



рдЖрд╡рд╢реНрдпрдХ рдзреНрд╡рдЬ рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдкрдХреЛ рдЗрд╕реЗ рдПрдХ рдирд╛рдо рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдПред рдЕрдм рд╕реЗ, рд╕рд┐рд╕реНрдЯрдо рдХрд╛ рдПрдХ рдЭрдВрдбрд╛ рд╣реИред рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, NoData рдзреНрд╡рдЬ рд╢реНрд░реГрдВрдЦрд▓рд╛ F0 рдмреНрд▓реЙрдХ рд╕реНрдерд┐рддрд┐ (рдЦрд╛рд▓реА) рдХреЗ рд▓рд┐рдП рдирд╛рдо рд╣реИред рдпрд╣реА рд╣реИ, рдПрдХ рд╕рдВрдХреЗрдд рд╣реИ рдХрд┐ рдЗрдирдкреБрдЯ рдмрдлрд░ рдореЗрдВ рдХреЛрдИ рдбреЗрдЯрд╛ рдирд╣реАрдВ рд╣реИред рдЖрд╣ ! NoData , рдХреНрд░рдорд╢рдГ, рдЗрд╕рдХрд╛ рдЙрд▓рдЯрд╛ред рдбреЗрдЯрд╛ рдЙрдкрд▓рдмреНрдзрддрд╛ рдХрд╛ рд╕рдВрдХреЗрддред рдЬреИрд╕реЗ рд╣реА рдбреЗрдЯрд╛ FIFO (рдкреНрд░реЛрдЧреНрд░рд╛рдореЗрдЯрд┐рдХ рд░реВрдк рд╕реЗ рдпрд╛ DMA рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП) рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рддрд╛ рд╣реИ, рдЭрдВрдбреЗ рдХреЛ рд╕рд╛рдлрд╝ рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ (рдФрд░ рдЙрд╕рдХрд╛ рдЙрд▓рдЯрд╛ рд▓рдВрдб), рдФрд░ рдЕрдЧрд▓реЗ рдШрдбрд╝реА рдЪрдХреНрд░ рдореЗрдВ, рдСрдЯреЛрдореЗрдЯрди рдирд┐рд╖реНрдХреНрд░рд┐рдп рдЕрд╡рд╕реНрдерд╛ рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓ рдЬрд╛рдПрдЧрд╛ рдФрд░ рдЧреЗрдЯрд╛рдЯрд╛ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░реЗрдЧрд╛ред



рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдЖрдЯреЛрдореИрдЯрди рдЗрд╕ рдЕрд╡рд╕реНрдерд╛ рд╕реЗ рдмрд┐рдирд╛ рдХрд┐рд╕реА рдПрдХ рдШрдбрд╝реА рдХреЗ рдЪрдХреНрд░ рдХреЗ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рдмрд┐рдирд╛ рд╢рд░реНрдд рдХреЗ рдмрд╛рд╣рд░ рдЖ рдЬрд╛рдПрдЧрд╛ред рдЗрд╕ рд░рд╛рдЬреНрдп рдХреЗ рд▓рд┐рдП рд╕рдВрдХреНрд░рдордг рдЧреНрд░рд╛рдл рдкрд░ рдХреЛрдИ рднреА рдХрд╛рд░реНрдп рдирд╣реАрдВ рджрд░реНрд╢рд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдЖрдкрдХреЛ рд╣рдореЗрд╢рд╛ рдпрд╣ рджреЗрдЦрдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ ALU рдХреНрдпрд╛ рдХрд░реЗрдЧрд╛ред рд╕реНрдЯреЗрдЯрд╕ рдХреЛрдб 1'b1 рд╣реИ, рдпрд╛рдиреА 3'b001ред рд╣рдо ALU рдореЗрдВ рд╕рдВрдмрдВрдзрд┐рдд рдкрддреЗ рдХреЛ рджреЗрдЦрддреЗ рд╣реИрдВ:



рдХреБрдЫ рд╣реИред рдпрд╣рд╛рдБ рдЬреЛ рдХреБрдЫ рднреА рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ рдЙрд╕реЗ рдкрдврд╝рдиреЗ рдХрд╛ рдХреЛрдИ рдЕрдиреБрднрд╡ рдирд╣реАрдВ рд╣реИ, рдЗрд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╕реЗрд▓ рдкрд░ рдбрдмрд▓-рдХреНрд▓рд┐рдХ рдХрд░рдХреЗ рдЦреЛрд▓реЗрдВ:



рдпрд╣ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд╣реИ рдХрд┐ ALU рд╕реНрд╡рдпрдВ рдЕрднреА рднреА рдХреЛрдИ рдХреНрд░рд┐рдпрд╛ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рд▓реЗрдХрд┐рди FIFO0 рдХреА рд╕рд╛рдордЧреНрд░реА, рдпрд╛рдиреА рдкреНрд░реЛрдЧреНрд░рд╛рдо рдпрд╛ DMA рдмреНрд▓реЙрдХ рд╕реЗ рдЖрдиреЗ рд╡рд╛рд▓реЗ рдбреЗрдЯрд╛ рдХреЛ A0 рд░рдЬрд┐рд╕реНрдЯрд░ рдореЗрдВ рд░рдЦрд╛ рдЬрд╛рдПрдЧрд╛ред рдЖрдЧреЗ рджреЗрдЦрддреЗ рд╣реБрдП, рдореИрдВ рдХрд╣реВрдВрдЧрд╛ рдХрд┐ A0 рдХреЛ рдПрдХ рд╢рд┐рдлреНрдЯ рд░рдЬрд┐рд╕реНрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдмрд╛рдЗрдЯ рд╕реАрд░рд┐рдпрд▓ рд░реВрдк рдореЗрдВ рдмрд╛рд╣рд░ рдирд┐рдХрд▓ рдЬрд╛рдПрдЧреАред рд░рдЬрд┐рд╕реНрдЯрд░ рдП 1 рд░рдЬрд┐рд╕реНрдЯрд░ рдбреА 1 рдХреЗ рдореВрд▓реНрдп рдХреЛ рд░рдЦреЗрдЧрд╛ред рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рд╕рдХреНрд░рд┐рдп рд╣реЛрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рд╕рднреА рдбреА рд░рдЬрд┐рд╕реНрдЯрд░ рдЖрдорддреМрд░ рдкрд░ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдореЗрдВ рднрд░реЗ рдЬрд╛рддреЗ рд╣реИрдВред рдлрд┐рд░, рдПрдкреАрдЖрдИ рдХреА рдЬрд╛рдВрдЪ рдХрд░рддреЗ рд╕рдордп, рд╣рдо рджреЗрдЦреЗрдВрдЧреЗ рдХрд┐ рдЗрд╕ рд░рдЬрд┐рд╕реНрдЯрд░ рдореЗрдВ рдШрдбрд╝реА рдХреА рдЯрд┐рдХ рдХреА рд╕рдВрдЦреНрдпрд╛ рдбрд╛рд▓реА рдЧрдИ рд╣реИ, рдЬреЛ рддреАрд╕рд░реЗ рдмрд┐рдЯ рдХреА рдЕрд╡рдзрд┐ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддреА рд╣реИред So. A0 рдореЗрдВ, рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдорд╛рди рдЧрд┐рд░ рдЧрдпрд╛, рдФрд░ A1 рдореЗрдВ, рдмрд┐рдЯ рдХреЗ рдкреНрд░рд╛рд░рдВрдн рднрд╛рдЧ рдХреА рдЕрд╡рдзрд┐ред рдФрд░ рдЕрдЧрд▓реА рдмреАрдЯ рдкрд░, рдорд╢реАрди рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рд░рд╛рдЬреНрдп рдХреЙрдиреНрд╕реНрдЯреИрдВрдЯ 1 рдореЗрдВ рдЬрд╛рдПрдЧреА ред



рдЬреИрд╕рд╛ рдХрд┐ рд░рд╛рдЬреНрдп рдХрд╛ рдирд╛рдо рд╣реИ, рдирд┐рд░рдВрддрд░ 1 рдЙрддреНрдкрдиреНрди рд╣реЛрддрд╛ рд╣реИред рдЖрдЗрдП рдПрд▓рдИрдбреА рдХреЗ рд▓рд┐рдП рджрд╕реНрддрд╛рд╡реЗрдЬ рджреЗрдЦреЗрдВред рдЗрд╕ рддрд░рд╣ рд╕реЗ рдпреВрдирд┐рдЯ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП:



рдФрд░ рдпрд╣рд╛рдБ рдпрд╣ рд╣реИ - рд╢реВрдиреНрдп:



рд▓рд╛рд▓ рд░реЗрдЦрд╛рдПрдБ рдореИрдВрдиреЗ рдЬреЛрдбрд╝реАрдВред рдЕрдЧрд░ рд╣рдо рдорд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рддрд┐рд╣рд╛рдИ рдХреА рдЕрд╡рдзрд┐ рдмрд░рд╛рдмрд░ рд╣реИ, рддреЛ рджрд╛рд▓реЛрдВ рдХреА рдЕрд╡рдзрд┐ (рдЙрд╕реА рджрд╕реНрддрд╛рд╡реЗрдЬ рдореЗрдВ рджреА рдЧрдИ) рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛рдПрдВ рдкреВрд░реА рд╣реЛрддреА рд╣реИрдВред рдпрд╣реА рд╣реИ, рдХрд┐рд╕реА рднреА рдЖрд╡реЗрдЧ рдореЗрдВ рдПрдХ рд╕реНрдЯрд╛рд░реНрдЯ рдпреВрдирд┐рдЯ, рдПрдХ рдбреЗрдЯрд╛ рдмрд┐рдЯ рдФрд░ рдПрдХ рд╕реНрдЯреЙрдк рдЬреАрд░реЛ рд╣реЛрддрд╛ рд╣реИред рджрд░рдЕрд╕рд▓, рдорд╢реАрди 1 рдХреЙрдиреНрд╕реНрдЯреИрдВрдЯ 1 рдЕрд╡рд╕реНрдерд╛ рдореЗрдВ рд╣реЛрдиреЗ рдкрд░ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдЗрдХрд╛рдИ рдкреНрд░реЗрд╖рд┐рдд рд╣реЛрддреА рд╣реИред

рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдорд╢реАрди рдЕрдкрдиреЗ рдЖрдВрддрд░рд┐рдХ рдЯреНрд░рд┐рдЧрд░ рдореЗрдВ рдЗрдХрд╛рдИ рдХреЛ рд▓реЗрдЯ рдХрд░ рджреЗрддреА рд╣реИред рдЯреНрд░рд┐рдЧрд░ рдХрд╛ рдирд╛рдо рдХрд░рдВрдЯрдмрд┐рдЯ рд╣реИ ред рдореВрд▓ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ, рдпрд╣ рдЖрдо рддреМрд░ рдкрд░ рдПрдХ рдЯреНрд░рд┐рдЧрд░ рдерд╛ рдЬреЛ рд╕рд╣рд╛рдпрдХ рдСрдЯреЛрдореЗрдЯрди рдХреА рд╕реНрдерд┐рддрд┐ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИред рдореИрдВрдиреЗ рддрдп рдХрд┐рдпрд╛ рдХрд┐ рд╡рд╣ рдорд╢реАрди рдХреЗрд╡рд▓ рд╕рднреА рдХреЛ рднреНрд░рдорд┐рдд рдХрд░реЗрдЧреА, рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рд╕рд┐рд░реНрдл рдПрдХ рдЯреНрд░рд┐рдЧрд░ рд╢реБрд░реВ рдХрд┐рдпрд╛ред рдЗрд╕рдХрд╛ рдХрд╣реАрдВ рднреА рд╡рд░реНрдгрди рдирд╣реАрдВ рд╣реИред рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдЖрдк рд░рд╛рдЬреНрдп рдХреЗ рдЧреБрдгреЛрдВ рдХреЛ рджрд░реНрдЬ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдирд┐рдореНрди рд░рд┐рдХреЙрд░реНрдб рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗрддрд╛ рд╣реИ:



рдФрд░ рдЧреНрд░рд╛рдл рдкрд░ рд░рд╛рдЬреНрдп рдХреЗ рдиреАрдЪреЗ рдРрд╕рд╛ рдкрд╛рда рд╣реИ:



рдмрд░рд╛рдмрд░реА рдХреЗ рдкреНрд░рддреАрдХ рд╕реЗ рдШрдмрд░рд╛рдПрдВ рдирд╣реАрдВред рдпреЗ рд╕рдВрдкрд╛рджрдХ рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рд╣реИрдВред рдкрд░рд┐рдгрд╛рдореА Verilog рдХреЛрдб рдореЗрдВ (рдЙрд╕реА рд╕рд┐рд╕реНрдЯрдо рджреНрд╡рд╛рд░рд╛ рд╕реНрд╡рддрдГ рдЙрддреНрдкрдиреНрди) рдПрдХ рддреАрд░ рд╣реЛрдЧрд╛:

 Constant1 : begin CurrentBit <= (1); if (( CycleTimeout ) == 1'b1) begin MainState <= Setup1 ; end end 

рдЗрд╕ рдЯреНрд░рд┐рдЧрд░ рдореЗрдВ рд▓рд┐рдпрд╛ рдЧрдпрд╛ рдорд╛рди рд╣рдорд╛рд░реЗ рдкреВрд░реЗ рдмреНрд▓реЙрдХ рдХрд╛ рдЖрдЙрдЯрдкреБрдЯ рд╣реИ:



рдпрд╣реА рд╣реИ, рдЬрдм рдорд╢реАрди рдХреЙрдиреНрд╕реНрдЯреИрдВрдЯ 1 рдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рддреА рд╣реИ, рддреЛ рд╣рдо рдЬрд┐рд╕ рдмреНрд▓реЙрдХ рдХрд╛ рд╡рд┐рдХрд╛рд╕ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдЙрд╕рдХрд╛ рдЖрдЙрдЯрдкреБрдЯ рдорд┐рд▓реЗрдЧрд╛ред рдЕрдм рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ ALU рдХреЛ 3'b010 рдХреЗ рд▓рд┐рдП рдХреИрд╕реЗ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:



рд╣рдо рдЗрд╕ рддрддреНрд╡ рдХреЛ рдкреНрд░рдХрдЯ рдХрд░рддреЗ рд╣реИрдВ:



рдпреВрдирд┐рдЯ 1 рдХреЛ рд░рдЬрд┐рд╕реНрдЯрд░ A1 рд╕реЗ рдШрдЯрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред ALU рдХрд╛ рдЖрдЙрдЯрдкреБрдЯ рдорд╛рди рд░рдЬрд┐рд╕реНрдЯрд░ A1 рдореЗрдВ рдЖрддрд╛ рд╣реИред рдКрдкрд░, рд╣рдордиреЗ рдорд╛рдирд╛ рдХрд┐ A1 рдПрдХ рдШрдбрд╝реА рдХрд╛рдЙрдВрдЯрд░ рд╣реИ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдЖрдЙрдЯрдкреБрдЯ рдкрд▓реНрд╕ рдХреА рдЕрд╡рдзрд┐ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЖрдкрдХреЛ рдпрд╛рдж рджрд┐рд▓рд╛ рджреВрдВ рдХрд┐ рдпрд╣ рдЕрдВрддрд┐рдо рдЪрд░рдг рдореЗрдВ D1 рд╕реЗ рдмреВрдЯ рд╣реБрдЖ рдерд╛ред
рдХрд┐рд╕реА рд░рд╛рдЬреНрдп рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдХреНрдпрд╛ рд╢рд░реНрдд рд╣реИ? CycleTimeOut ред рдЗрд╕реЗ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рдЖрдЙрдЯрдкреБрдЯ рдХреЗ рдмреАрдЪ рд╡рд░реНрдгрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:



рдЗрд╕рд▓рд┐рдП, рд╣рдо рддрд░реНрдХ рдХреЛ рдПрдХ рд╕рд╛рде рд▓рд╛рддреЗ рд╣реИрдВред рдкрд┐рдЫрд▓реА рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдкреНрд░реЛрдЧреНрд░рд╛рдо рджреНрд╡рд╛рд░рд╛ рдкрд╣рд▓реЗ рднрд░реЗ рдЧрдП рд░рдЬрд┐рд╕реНрдЯрд░ D1 рдХреА рд╕рд╛рдордЧреНрд░реА рд░рдЬрд┐рд╕реНрдЯрд░ A1 рдореЗрдВ рдЧрд┐рд░ рдЧрдИ рдереАред рдЗрд╕ рдЪрд░рдг рдкрд░, рдорд╢реАрди CurrentBit рдЯреНрд░рд┐рдЧрд░ рдХреЛ рдПрдХ рдореЗрдВ рдЕрдиреБрд╡рд╛рдж рдХрд░рддреА рд╣реИ, рдФрд░ ALU рдореЗрдВ, рдкреНрд░рддреНрдпреЗрдХ рдШрдбрд╝реА рдЪрдХреНрд░ рдореЗрдВ A1 рд░рдЬрд┐рд╕реНрдЯрд░ рдХрдо рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рдЬрдм A1 рд╢реВрдиреНрдп рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдзреНрд╡рдЬ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЙрдард╛рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рд▓реЗрдЦрдХ рдиреЗ CycleTimeout рдирд╛рдо рджрд┐рдпрд╛ рдерд╛, рдЬрд┐рд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдорд╢реАрди Setup1 рд╕реНрдерд┐рддрд┐ рдкрд░ рд╕реНрд╡рд┐рдЪ рд╣реЛ рдЬрд╛рдПрдЧреАред

рд░рд╛рдЬреНрдп Setup1 рдЙрдкрдпреЛрдЧреА рдкрд▓реНрд╕ рдХреЛ рд╕рдВрдЪрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛ рддреИрдпрд╛рд░ рдХрд░рддрд╛ рд╣реИред



рд╣рдо 3'b011 рдкрд░ ALU рдирд┐рд░реНрджреЗрд╢ рдХреЛ рджреЗрдЦрддреЗ рд╣реИрдВред рдореИрдВ рдЗрд╕реЗ рддреБрд░рдВрдд рдЦреЛрд▓реВрдВрдЧрд╛:



рдРрд╕рд╛ рд▓рдЧреЗрдЧрд╛ рдХрд┐ ALU рдореЗрдВ рдХреЛрдИ рдХреНрд░рд┐рдпрд╛ рдирд╣реАрдВ рд╣реИред рд╕рдВрдЪрд╛рд▓рди рдПрди.рдУ.рдкреА. рдФрд░ ALU рдЖрдЙрдЯрдкреБрдЯ рдХрд╣реАрдВ рднреА рдирд╣реАрдВ рдорд┐рд▓рддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдРрд╕рд╛ рд╣реИ рдирд╣реАрдВред ALU рдореЗрдВ рдбреЗрдЯрд╛ рд╢рд┐рдлреНрдЯ рдПрдХ рдЕрддреНрдпрдВрдд рдорд╣рддреНрд╡рдкреВрд░реНрдг рдХреНрд░рд┐рдпрд╛ рд╣реИред рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдЖрдЙрдЯрдкреБрдЯ рдХреЗ рдмреАрдЪ рдХреИрд░реА рдмрд┐рдЯ рд╣рдорд╛рд░реА ShiftOut рд╢реНрд░реГрдВрдЦрд▓рд╛ рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реИ:



рдФрд░ рдЗрд╕ рдкрд╛рд░реА рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдореВрд▓реНрдп рд╕реНрд╡рдпрдВ рдХрд╣реАрдВ рднреА рдирд╣реАрдВ рдорд┐рд▓реЗрдЧрд╛, рд▓реЗрдХрд┐рди ShiftOut рд╢реНрд░реГрдВрдЦрд▓рд╛ рд░рдЬрд┐рд╕реНрдЯрд░ A0 рдХреЗ рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд┐рдЯ рдХрд╛ рдореВрд▓реНрдп рд▓реЗрдЧреАред рдпрд╣реА рд╣реИ, рдбреЗрдЯрд╛ рдЬрд┐рд╕реЗ рдкреНрд░реЗрд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЧреНрд░рд╛рдл рдХреА рд╕реНрдерд┐рддрд┐ рдХреЗ рддрд╣рдд, рдпрд╣ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ ShiftOut рд╢реНрд░реГрдВрдЦрд▓рд╛ рдореЗрдВ ALU рдХреЛ рдЫреЛрдбрд╝рдиреЗ рд╡рд╛рд▓рд╛ рдпрд╣ рдорд╛рди, CurrentBit рдЯреНрд░рд┐рдЧрд░ рдореЗрдВ рд▓реЗрдЯ рдЬрд╛рдПрдЧрд╛ред рдореБрдЭреЗ рдлрд┐рд░ рд╕реЗ рдбреНрд░рд╛рдЗрдВрдЧ рджрд┐рдЦрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рддрд╛рдХрд┐ рд▓реЗрдЦ рдХреЛ рдЙрд▓реНрдЯрд╛ рди рдХрд░реЗрдВ:



рдмрд┐рдЯ рдХреЗ рджреВрд╕рд░реЗ рднрд╛рдЧ рдХрд╛ рдкреНрд░рд╕рд╛рд░рдг рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ - рддрддреНрдХрд╛рд▓ рдореВрд▓реНрдп 0 рдпрд╛ 1 рд╣реИред

рд╣рдо ALU рдХреЗ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдкрд░ рд▓реМрдЯрддреЗ рд╣реИрдВред рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХрд╣рд╛ рдЧрдпрд╛ рд╣реИ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реИ рдХрд┐ рдлрд┐рд░ рд╕реЗ рдкрд▓реНрд╕ рдХреЗ рджреВрд╕рд░реЗ рддреАрд╕рд░реЗ рдХреА рдЕрд╡рдзрд┐ рдХреЛ рдорд╛рдкрдиреЗ рдХреЗ рд▓рд┐рдП рд░рдЬрд┐рд╕реНрдЯрд░ рдбреА 1 рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЛ рдлрд┐рд░ рд╕реЗ рд░рдЬрд┐рд╕реНрдЯрд░ рдП 1 рдореЗрдВ рдбрд╛рд▓ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

DataStage рд╕реНрдерд┐рддрд┐ рдмрд╣реБрдд рдХреЙрдиреНрд╕реНрдЯреИрдВрдЯ 1 рд╕реНрдерд┐рддрд┐ рдХреЗ рд╕рдорд╛рди рд╣реИред рдСрдЯреЛрдореЗрдЯрди рдХреЗрд╡рд▓ A1 рд╕реЗ рдПрдХ рдШрдЯрд╛рддрд╛ рд╣реИ рдФрд░ рд╢реВрдиреНрдп рдкрд░ рдкрд╣реБрдВрдЪрдиреЗ рдкрд░ рдЕрдЧрд▓реА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рддрд╛ рд╣реИред рдореБрдЭреЗ рднреА рдЗрд╕реЗ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрд╛рдирд╛:



рдФрд░ рдЗрд╕ рддрд░рд╣:



рдЗрд╕рдХреЗ рдмрд╛рдж Setup2 рдХреА рд╕реНрдерд┐рддрд┐ рдЖрддреА рд╣реИ, рдЬрд┐рд╕рдХрд╛ рд╕рд╛рд░ рд╣рдо рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЬрд╛рдирддреЗ рд╣реИрдВред



рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, CurrentBit рдЯреНрд░рд┐рдЧрд░ рд╢реВрдиреНрдп рдкрд░ рд░реАрд╕реЗрдЯ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ (рдЪреВрдВрдХрд┐ рдирд╛рдбрд╝реА рдХреЗ рддреАрд╕рд░реЗ рддреАрд╕рд░реЗ рдХреЛ рдкреНрд░реЗрд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рд╕реНрдЯреЙрдк рднрд╛рдЧ, рдФрд░ рдпрд╣ рд╣рдореЗрд╢рд╛ рд╢реВрдиреНрдп рд╣реИ)ред ALU D1 рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЛ A1 рдореЗрдВ рд▓реЛрдб рдХрд░рддрд╛ рд╣реИред рдЖрдк рдЗрд╕реЗ рдЕрдкрдиреА рдкреНрд░рд╢рд┐рдХреНрд╖рд┐рдд рдЖрдВрдЦ рдХреЗ рд╕рд╛рде рдПрдХ рдЫреЛрдЯреЗ рдиреЛрдЯ рдореЗрдВ рднреА рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ:



рдХреЙрдиреНрд╕реНрдЯреИрдВрдЯ 0 рдХреА рд╕реНрдерд┐рддрд┐ рдХреЙрдиреНрд╕реНрдЯреИрдВрдЯ 1 рдФрд░ рдбреЗрдЯрд╛рд╕реНрдЯреЗрдЬ рдХреЗ рд░рд╛рдЬреНрдпреЛрдВ рдХреЗ рд╕рдорд╛рди рд╣реИред A1 рд╕реЗ рдпреВрдирд┐рдЯ рдШрдЯрд╛рдПрдВред рдЬрдм рдорд╛рди рд╢реВрдиреНрдп рдкрд░ рдкрд╣реБрдВрдЪрддрд╛ рд╣реИ, рддреЛ ShiftData рд╕реНрдерд┐рддрд┐ рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓реЗрдВ:





ShiftData рдХреА рд╕реНрдерд┐рддрд┐ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рд╣реИред ALU рдХреЗ рд╕рдВрдЧрдд рдирд┐рд░реНрджреЗрд╢реЛрдВ рдореЗрдВ, рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреНрд░рд┐рдпрд╛рдПрдВ рдХреА рдЬрд╛рддреА рд╣реИрдВ:



рд░рдЬрд┐рд╕реНрдЯрд░ A0 рдХреЛ 1 рдмрд┐рдЯ рд╕реЗ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдкрд░рд┐рдгрд╛рдо рд╡рд╛рдкрд╕ A0 рдореЗрдВ рдбрд╛рд▓ рджрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред A1 рдореЗрдВ, D1 рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЛ рдлрд┐рд░ рд╕реЗ рд░рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИ рддрд╛рдХрд┐ рдЕрдЧрд▓реЗ рдбреЗрдЯрд╛ рдмрд┐рдЯ рдХреЗ рд▓рд┐рдП рддреАрд╕рд░реЗ рдХреЛ рдорд╛рдкрдирд╛ рд╢реБрд░реВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗред

рдЦрд╛рддреЗ рдХреА рдкреНрд░рд╛рдердорд┐рдХрддрд╛рдУрдВ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддреЗ рд╣реБрдП рдЖрдЙрдЯрдкреБрдЯ рддреАрд░реЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реИ, рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рд╣рдо рд╢рд┐рдлреНрдЯрдбреЗрдЯрд╛ рд╕реНрдерд┐рддрд┐ рдкрд░ рдбрдмрд▓-рдХреНрд▓рд┐рдХ рдХрд░рддреЗ рд╣реИрдВред



рдпрджрд┐ рдЕрдВрддрд┐рдо рдмрд┐рдЯ рдХреЛ рдкреНрд░реЗрд╖рд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рдпрд╣ рдЭрдВрдбрд╛ рдХреИрд╕реЗ рдмрдирддрд╛ рд╣реИ, рдереЛрдбрд╝рд╛ рдХрдо рд╣реЛрддрд╛ рд╣реИ), рддреЛ рд╣рдо рд╡рд░реНрддрдорд╛рди рдмрд┐рдЯ рдХреЗ рдЕрдЧрд▓реЗ рдмрд┐рдЯ рдХреЗ рд▓рд┐рдП рдПрдХ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВред

рдпрджрд┐ рдЕрдВрддрд┐рдо рдмрд┐рдЯ рд╕рдВрдЪрд░рд┐рдд рд╣реЛрддрд╛ рд╣реИ рдФрд░ FIFO рдореЗрдВ рдХреЛрдИ рдбреЗрдЯрд╛ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рд╣рдо рдирд┐рд╖реНрдХреНрд░рд┐рдп рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдЬрд╛рддреЗ рд╣реИрдВред

рдЕрдВрдд рдореЗрдВ, рдпрджрд┐ рдЕрдВрддрд┐рдо рдмрд┐рдЯ рдХреЛ рдкреНрд░реЗрд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди FIFO рдореЗрдВ рдбреЗрдЯрд╛ рд╣реИ, рддреЛ рд╣рдо рдЕрдЧрд▓реЗ рдмрд╛рдЗрдЯ рдХреЗ рдЪрдпрди рдФрд░ рдкреНрд░рд╕рд╛рд░рдг рдкрд░ рдЬрд╛рддреЗ рд╣реИрдВред

рдЕрдм рдмрд┐рдЯ рдХрд╛рдЙрдВрдЯрд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВред ALU рдореЗрдВ рдХреЗрд╡рд▓ рджреЛ рдмреИрдЯрд░реА рд╣реИрдВ: A0 рдФрд░ A1ред рд╡реЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╢рд┐рдлреНрдЯ рд░рдЬрд┐рд╕реНрдЯрд░ рдФрд░ рджреЗрд░реА рдХрд╛рдЙрдВрдЯрд░ рдкрд░ рдХреНрд░рдорд╢рдГ рдХрдмреНрдЬрд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдЗрд╕рд▓рд┐рдП, рдереЛрдбрд╝рд╛ рд╕рд╛ рдХрд╛рдЙрдВрдЯрд░ рдмрд╛рд╣рд░реА рд░реВрдк рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред



рдЙрд╕ рдкрд░ рдбрдмрд▓ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ:



рдмреВрдЯ рдХрд╛ рдореВрд▓реНрдп рдЫрд╣ рд╣реИред рдпрд╣ рдЪрд░ рдЦрдВрдб рдореЗрдВ рд╡рд░реНрдгрд┐рдд LoadCounter рдзреНрд╡рдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд▓реЛрдб рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:



рдпрд╣реА рд╣реИ, рдЬрдм рдбреЗрдЯрд╛ рдХрд╛ рдЕрдЧрд▓рд╛ рдмрд╛рдЗрдЯ рд▓рд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдпрд╣ рдирд┐рд░рдВрддрд░ рд░рд╛рд╕реНрддреЗ рдореЗрдВ рд▓реЛрдб рд╣реЛрддрд╛ рд╣реИред

рдЬрдм рдорд╢реАрди ShiftData рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рддреА рд╣реИ, рддреЛ рдХрд╛рдЙрдВрдЯрд░ рдореВрд▓реНрдп рдХрдо рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рдЬрдм рдпрд╣ рд╢реВрдиреНрдп рддрдХ рдкрд╣реБрдВрдЪрддрд╛ рд╣реИ, рддреЛ рдЖрдЙрдЯрдкреБрдЯ рдЯрд░реНрдорд┐рдирд▓рдХрд╛рдЙрдВрдЯ рдЬреБрдбрд╝рд╛ рд╣реЛрддрд╛ рд╣реИ, рд╣рдорд╛рд░реЗ рдлрд╛рдЗрдирд▓рдмреАрдЯ рдмреАрдЬ рдХреЗ рд╕рд░реНрдХрд┐рдЯ рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реЛрддрд╛ рд╣реИред рдпрд╣ рд╕рд░реНрдХрд┐рдЯ рд╣реИ рдЬреЛ рд╕реЗрдЯ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдорд╢реАрди рд╡рд░реНрддрдорд╛рди рдмрд╛рдЗрдЯ рдХреЗ рдЕрдЧрд▓реЗ рдмрд┐рдЯ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░реЗрдЧрд╛ рдпрд╛ рдПрдХ рдирдпрд╛ рдмрд╛рдЗрдЯ (рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ, рдпрд╛ рдПрдХ рдирдпрд╛ рдбреЗрдЯрд╛ рдкреИрдХреЗрдЯ рдХреЗ рд▓рд┐рдП рдкреНрд░рддреАрдХреНрд╖рд╛) рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░реЗрдЧрд╛ред

рджрд░рдЕрд╕рд▓, рд╕рдм рдХреБрдЫ рддрд░реНрдХ рд╕реЗ рд╣реИред SpaceForData рд╕рд┐рдЧреНрдирд▓ рдХреИрд╕реЗ рдЙрддреНрдкрдиреНрди рд╣реЛрддрд╛ рд╣реИ , рдЬреЛ рднреВрдЦ рдЙрддреНрдкрд╛рджрди рдХреА рд╕реНрдерд┐рддрд┐ рд╕реЗрдЯ рдХрд░рддрд╛ рд╣реИ (рдбреАрдПрдордП рдЗрдХрд╛рдИ рдХреЛ рд╕реВрдЪрд┐рдд рдХрд░рдирд╛ рдХрд┐ рдЕрдЧрд▓реЗ рдбреЗрдЯрд╛ рдХреЛ рдкреНрд░рд╕рд╛рд░рд┐рдд рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ), рдкрд╛рдардХреЛрдВ рдХреЛ рд╕реНрд╡рддрдВрддреНрд░ рд░реВрдк рд╕реЗ рдЯреНрд░реИрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдордВрддреНрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдХрд╛ рд╕рдорд░реНрдерди


рдореВрд▓ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓реЗрдЦрдХ рдиреЗ рдПрдХреАрдХреГрдд рд╕рдорд╛рдзрд╛рди рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдмреНрд▓реЙрдХ рдореЗрдВ рдкреВрд░реЗ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд▓рд┐рдП рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рд╕рдорд░реНрдерди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЪреБрдирд╛ред рдореИрдВ рдЖрдкрдХреЛ рдпрд╛рдж рджрд┐рд▓рд╛ рджреВрдВ, рд╣рдо рдЗрд╕ рдмреНрд▓реЙрдХ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ:



рдЗрд╕ рд╕реНрддрд░ рд╕реЗ, DMA рдкреБрд╕реНрддрдХрд╛рд▓рдп рдЗрдХрд╛рдИ рдФрд░ UDB рднрд╛рдЧ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╕рднреА рднрд╛рдЧреЛрдВ рдкрд░ рдирд┐рдпрдВрддреНрд░рдг рд╣реИред рдПрдкреАрдЖрдИ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореВрд▓ рдХреЗ рд▓реЗрдЦрдХ рдиреЗ рд╣реЗрдбрд░ рдФрд░ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЬреЛрдбрд╝рд╛:



рдЗрди рдлрд╛рдЗрд▓реЛрдВ рдХрд╛ рдмреЙрдбреА рдлреЙрд░реНрдореЗрдЯ рдЖрдкрдХреЛ рджреБрдЦреА рдХрд░рддрд╛ рд╣реИред рд╕рд╛рд░рд╛ рджреЛрд╖ "рд╢реБрджреНрдз рд▓реЛрдЧреЛрдВ" рдХреЗ рд▓рд┐рдП PSoC рдбрд┐рдЬрд╝рд╛рдЗрдирд░ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХрд╛ рдкреНрдпрд╛рд░ рд╣реИред рдЗрд╕рд▓рд┐рдП рднрдпрд╛рдирдХ рдореИрдХреНрд░реЛрдЬрд╝ рдФрд░ рдХрд┐рд▓реЛрдореАрдЯрд░ рдХреЗ рдирд╛рдоред C ++ рдореЗрдВ рдХреНрд▓рд╛рд╕ рдСрд░реНрдЧрдирд╛рдЗрдЬрд╝реЗрд╢рди рдпрд╣рд╛рдБ рдХрд╛рдо рдЖрдПрдЧреАред рд╣рдорд╛рд░реЗ RTOS MAX рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╕рдордп рдХрдо рд╕реЗ рдХрдо рд╣рдордиреЗ рдЗрд╕рдХреА рдЬрд╛рдБрдЪ рдХреА: рдпрд╣ рд╕реБрдВрджрд░ рдФрд░ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рддрд░реАрдХреЗ рд╕реЗ рдирд┐рдХрд▓рд╛ред рд▓реЗрдХрд┐рди рдпрд╣рд╛рдБ рдЖрдк рдмрд╣реБрдд рдмрд╣рд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЖрдкрдХреЛ рд╡рд╣ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдЬреЛ рдКрдкрд░ рд╕реЗ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдЙрддрд╛рд░рд╛ рдЧрдпрд╛ рд╣реИред рдореИрдВ рдХреЗрд╡рд▓ рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ рджрд┐рдЦрд╛рдКрдВрдЧрд╛ рдХрд┐ рдЗрди рдореИрдХреНрд░реЛ рдпреБрдХреНрдд рдПрдкреАрдЖрдИ рдлрд╝рдВрдХреНрд╢рди рдХреИрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИ:

 volatile void* `$INSTANCE_NAME`_Start(unsigned int nNumberOfNeopixels, void* pBuffer, double fSpeedMHz) { //work out cycles required at specified clock speed... `$INSTANCE_NAME`_g_pFrameBuffer = NULL; if((0.3/(1.0/(fSpeedMHz))) > 255) return NULL; unsigned char fCyclesOn = (unsigned char)(0.35/(1.0/(fSpeedMHz))); `$INSTANCE_NAME`_g_nFrameBufferSize = nNumberOfNeopixels*3; //Configure for 19.2 MHz operation `$INSTANCE_NAME`_Neo_BITCNT_Start(); //Counts bits in a byte //Sets bitrate frequency in number of clocks. Must be larger than largest of above two counter periods CY_SET_REG8(`$INSTANCE_NAME`_Neo_DPTH_D1_PTR, fCyclesOn+1); //Setup a DMA channel `$INSTANCE_NAME`_g_nDMA_Chan = `$INSTANCE_NAME`_DMA_DmaInitialize(`$INSTANCE_NAME`_DMA_BYTES_PER_BURST, `$INSTANCE_NAME`_DMA_REQUEST_PER_BURST, HI16(`$INSTANCE_NAME`_DMA_SRC_BASE), HI16(`$INSTANCE_NAME`_DMA_DST_BASE)); if(pBuffer == NULL) ... 

рдЦреЗрд▓ рдХреЗ рдЗрди рдирд┐рдпрдореЛрдВ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдЕрдм рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдЕрдкрдиреЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рддреЗ рд╕рдордп рдкреНрд░реЗрд░рдгрд╛ рдХрд╣рд╛рдБ рд╕реЗ рдорд┐рд▓рддреА рд╣реИ (рдореВрд▓ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдРрд╕рд╛ рдХрд░рдирд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╣реИ)ред рдФрд░ рдореИрдВ рд╡рд┐рд╡рд░рдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рдирд╛ рдкрд╕рдВрдж рдХрд░рддрд╛ рд╣реВрдВ, рдЬрдирд░реЗрдЯрд░ рджреНрд╡рд╛рд░рд╛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд┐рдП рдЧрдП рд╡рд┐рдХрд▓реНрдк рдХреЛ рд▓реЗрдирд╛ред

рдХреЛрдб рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж (рдиреАрдЪреЗ рд╡рд░реНрдгрд┐рдд) рдЗрд╕ рдлрд╛рдЗрд▓ рдХреЛ рдпрд╣рд╛рдБ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛:



рдФрд░ рджреГрд╢реНрдп рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдкрдардиреАрдп рд╣реЛрдЧрд╛ред рдЕрдм рддрдХ рджреЛ рдХрд╛рд░реНрдп рд╣реИрдВред рдкрд╣рд▓рд╛ рд╕рд┐рд╕реНрдЯрдо рдХреЛ рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝ рдХрд░рддрд╛ рд╣реИ, рджреВрд╕рд░рд╛ рдмрдлрд░ рд╕реЗ рдПрд▓рдИрдбреА рд▓рд╛рдЗрди рддрдХ рдбреЗрдЯрд╛ рдЯреНрд░рд╛рдВрд╕рдлрд░ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рддрд╛ рд╣реИред

рдкреНрд░рд╛рд░рдВрдн рдкреНрд░рдгрд╛рд▓реА рдХреЗ рд╕рднреА рднрд╛рдЧреЛрдВ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддрд╛ рд╣реИред рд╕рд╛рдд-рдмрд┐рдЯ рдХрд╛рдЙрдВрдЯрд░ рдХреА рдЖрд░рдВрднреАрдХрд░рдг рд╣реИ, рдЬреЛ UDB рдкреНрд░рдгрд╛рд▓реА рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИ:

  NP_Neo_BITCNT_Start(); //Counts bits in a byte 

рдПрдХ рдирд┐рд░рдВрддрд░ рдЧрдгрдирд╛ рд╣реИ рдЬрд┐рд╕реЗ рдбреА 1 рд░рдЬрд┐рд╕реНрдЯрд░ рдореЗрдВ рд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП (рдореБрдЭреЗ рдпрд╛рдж рд╣реИ рдХрд┐ рдпрд╣ рддреАрд╕рд░реЗ рдмрд┐рдЯреНрд╕ рдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдХреА рдЕрд╡рдзрд┐ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИ):

 unsigned char fCyclesOn = (unsigned char)(0.35/(1.0/(fSpeedMHz))); CY_SET_REG8(NP_Neo_DPTH_D1_PTR, fCyclesOn+1); 

DMA рдмреНрд▓реЙрдХ рд╕реЗрдЯ рдХрд░рдиреЗ рд╕реЗ рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЕрдзрд┐рдХрд╛рдВрд╢ рднрд╛рдЧ рд▓рд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдмрдлрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕реНрд░реЛрдд рдХреЗ рд░реВрдк рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ UDB рдмреНрд▓реЙрдХ рдХреЗ FIFO0 рдХрд╛ рдЙрдкрдпреЛрдЧ рд░рд┐рд╕реАрд╡рд░ (NP_Neo_DPTH_F0_PTR рдХрд┐рд▓реЛрдореАрдЯрд░ рд░рд┐рдХреЙрд░реНрдб рдореЗрдВ) рдХреЗ рд░реВрдк рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд▓реЗрдЦрдХ рдХреЗ рдкрд╛рд╕ рдбреЗрдЯрд╛ рдЯреНрд░рд╛рдВрд╕рдлрд╝рд░ рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рдЗрд╕ рд╕реЗрдЯрд┐рдВрдЧ рдХрд╛ рдПрдХ рд╣рд┐рд╕реНрд╕рд╛ рдерд╛ред рд▓реЗрдХрд┐рди, рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рдкреНрд░рддреНрдпреЗрдХ рдЯреНрд░рд╛рдВрд╕рдорд┐рд╢рди рдХреЗ рд▓рд┐рдП рд╕рднреА рдЧрдгрдирд╛ рдХрд░рдирд╛ рдмрд╣реБрдд рдмреЗрдХрд╛рд░ рд╣реИред рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЬрдм рдЖрдк рд╕рдордЭрддреЗ рд╣реИрдВ рдХрд┐ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдЕрдВрджрд░ рдХреА рдПрдХ рдХреНрд░рд┐рдпрд╛ рдмрд╣реБрдд, рдмрд╣реБрдд рд╣реА рдЪрдордХрджрд╛рд░ рджрд┐рдЦрддреА рд╣реИред

 //work out cycles required at specified clock speed... NP_g_pFrameBuffer = NULL; NP_g_nFrameBufferSize = nNumberOfNeopixels*3; //Setup a DMA channel NP_g_nDMA_Chan = NP_DMA_DmaInitialize(NP_DMA_BYTES_PER_BURST, NP_DMA_REQUEST_PER_BURST, HI16(NP_DMA_SRC_BASE), HI16(NP_DMA_DST_BASE)); ... NP_g_nDMA_TD = CyDmaTdAllocate(); CyDmaTdSetConfiguration(NP_g_nDMA_TD, NP_g_nFrameBufferSize, CY_DMA_DISABLE_TD, TD_INC_SRC_ADR | TD_AUTO_EXEC_NEXT); CyDmaTdSetAddress(NP_g_nDMA_TD, LO16((uint32)NP_g_pFrameBuffer), LO16((uint32)NP_Neo_DPTH_F0_PTR)); CyDmaChSetInitialTd(NP_g_nDMA_Chan, NP_g_nDMA_TD); 

рдкрд╣рд▓реЗ рдХреА рдкреГрд╖реНрдарднреВрдорд┐ рдХреЗ рдЦрд┐рд▓рд╛рдл рджреВрд╕рд░рд╛ рдХрд╛рд░реНрдп рд▓реИрдХреЛрдирд┐рдХрд┐рдЬрд╝реНрдо рдХрд╛ рд╢реАрд░реНрд╖ рд╣реИред рдпрд╣ рд╕рд┐рд░реНрдл рдЗрддрдирд╛ рд╣реИ рдХрд┐ рдкрд╣рд▓реЗ рдЪрд░рдг рдХреЛ рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝реЗрд╢рди рд╕реНрдЯреЗрдЬ рдкрд░ рдмреБрд▓рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрдм рдкреНрд░рджрд░реНрд╢рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛рдПрдВ рдмрд╣реБрдд рдореБрдХреНрдд рд╣реЛрддреА рд╣реИрдВред рдСрдкрд░реЗрд╢рди рдХреЗ рджреМрд░рд╛рди, рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЗ рдЪрдХреНрд░реЛрдВ рдХреЛ рдХрд┐рд╕реА рднреА рдЪреАрдЬрд╝ рдкрд░ рдирд╣реАрдВ рдлреЗрдВрдХрдирд╛ рдмреЗрд╣рддрд░ рд╣реИ:

 void NP_Update() { if(NP_g_pFrameBuffer) { CyDmaChEnable(NP_g_nDMA_Chan, 1); } } 

рдХрдИ рдмрдлрд╝рд░реНрд╕ (рдбрдмрд▓ рдмрдлрд░рд┐рдВрдЧ рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП) рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдкрд░реНрдпрд╛рдкреНрдд рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдПрдкреАрдЖрдИ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреА рдЪрд░реНрдЪрд╛ рд▓реЗрдЦ рдХреЗ рджрд╛рдпрд░реЗ рд╕реЗ рдкрд░реЗ рд╣реИред рдЕрдм рдореБрдЦреНрдп рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рд╡рд┐рдХрд╕рд┐рдд рдлрд░реНрдорд╡реЗрдпрд░ рдореЗрдВ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рд╕рдорд░реНрдерди рдХреЛ рдХреИрд╕реЗ рдЬреЛрдбрд╝рд╛ рдЬрд╛рдПред рдЕрдм рд╣рдо рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рдХреИрд╕реЗ рдХрд░рдирд╛ рд╣реИред

рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдЬрдирд░реЗрд╢рди


рддреЛ, рдкреВрд░реЗ рдлрд░реНрдорд╡реЗрдпрд░ рднрд╛рдЧ рддреИрдпрд╛рд░ рд╣реИ, рдПрдкреАрдЖрдИ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рд╣реИ, рдЖрдЧреЗ рдХреНрдпрд╛ рдХрд░рдирд╛ рд╣реИ? рдореЗрдиреВ рдЖрдЗрдЯрдо рдмрдирд╛рдПрдБ-> рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЬреЗрдирд░реЗрдЯ рдХрд░реЗрдВ рдЪреБрдиреЗрдВред



рдпрджрд┐ рд╕рдм рдареАрдХ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЖрдк рдкрд░рд┐рдгрд╛рдо рдЯреИрдм рдЦреЛрд▓ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЖрд░рдЯреА рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреЗ рд╕рд╛рде рдлрд╛рдЗрд▓ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред



рдпрд╣ рджрд┐рдЦрд╛рддрд╛ рд╣реИ рдХрд┐ рдлрд░реНрдорд╡реЗрдпрд░ рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдореЗрдВ рдХрд┐рддрдирд╛ рд╕рд┐рд╕реНрдЯрдо рд╕рдВрд╕рд╛рдзрди рдЪрд▓рд╛ рдЧрдпрд╛ред





рдЬрдм рдореИрдВ рдЙрди рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреА рддреБрд▓рдирд╛ рдХрд░рддрд╛ рд╣реВрдВ рдЬреЛ рдореВрд▓ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдереЗ, рддреЛ рдореЗрд░реА рдЖрддреНрдорд╛ рдЧрд░реНрдо рд╣реЛ рдЬрд╛рддреА рд╣реИред

рдЕрдм рд╕реЛрд░реНрд╕ рдЯреИрдм рдкрд░ рдЬрд╛рдПрдВ рдФрд░ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдкрд╛рд░реНрдЯ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░реЗрдВред рд▓реЗрдХрд┐рди рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рддреБрдЪреНрдЫ рд╣реИ рдФрд░ рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред



рдирд┐рд╖реНрдХрд░реНрд╖


рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рд╕реЗ, рдкрд╛рдардХреЛрдВ рдиреЗ UDB рдмреНрд▓реЙрдХреЛрдВ рдХреЗ рд╕рд╛рде рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдХрд╛рд░реНрдп рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рдирдпрд╛ рдФрд░ рджрд┐рд▓рдЪрд╕реНрдк рд╕реАрдЦрд╛ рд╣реИред рдореИрдВрдиреЗ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдХрд╛рд░реНрдп (рдПрд▓рдИрдбреА рдирд┐рдпрдВрддреНрд░рдг), рд╕рд╛рде рд╣реА рдбрд┐рдЬрд╛рдЗрди рдкрджреНрдзрддрд┐ рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА, рдХреНрдпреЛрдВрдХрд┐ рдореБрдЭреЗ рдХреБрдЫ рдкрд╣рд▓реБрдУрдВ рдХреЛ рд╕рдордЭрдирд╛ рдерд╛ рдЬреЛ рд╡рд┐рд╢реЗрд╖рдЬреНрдЮреЛрдВ рдХреЗ рд▓рд┐рдП рд╕реНрдкрд╖реНрдЯ рдереЗред рдореИрдВрдиреЗ рдЙрдиреНрд╣реЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА, рдЬрдмрдХрд┐ рдЦреЛрдЬ рдХреА рдпрд╛рджреЗрдВ рддрд╛рдЬрд╛ рд╣реИрдВред рд╣рд▓ рдХреА рдЧрдИ рд╕рдорд╕реНрдпрд╛ рдХреЗ рд░реВрдк рдореЗрдВ, рдореЗрд░реЗ рд▓рд┐рдП рдЯрд╛рдЗрдорд┐рдВрдЧ рдЖрд░реЗрдЦ рдореВрд▓ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓реЗрдЦрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдЗрддрдиреЗ рдЖрджрд░реНрд╢ рдирд╣реАрдВ рдереЗ, рд▓реЗрдХрд┐рди рд╡реЗ рдПрд▓ рдИ рдбреА рдХреЗ рд▓рд┐рдП рдкреНрд░рд▓реЗрдЦрди рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдореЗрдВ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдлрд┐рдЯ рдереЗ, рдФрд░ рд╕рд┐рд╕реНрдЯрдо рд╕рдВрд╕рд╛рдзрди рдХрд╛рдлреА рдХрдо рдереЗред

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдпрд╣ рдЧреИрд░-рдорд╛рдирдХ рдЬрд╛рдирдХрд╛рд░реА рдХрд╛ рдХреЗрд╡рд▓ рдПрдХ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИред рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рдЕрдзрд┐рдХрд╛рдВрд╢ рд╕рд╛рдордЧреНрд░рд┐рдпреЛрдВ рд╕реЗ рдРрд╕рд╛ рд▓рдЧ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ UDB рдХреЗрд╡рд▓ рдзрд╛рд░рд╛рд╡рд╛рд╣рд┐рдХ рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИред рдорд┐рд▓рд╛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдиреЛрдЯ, рдЬреЛ рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ рджрд┐рдЦрд╛рддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдбреНрд░рд╛рдЗрд╡ рдФрд░ рд╕рдорд╛рдирд╛рдВрддрд░ рдбреЗрдЯрд╛ рдХреИрд╕реЗ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╣рдо рдЗрд╕ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рдПрдлрдПрдХреНрд╕ 2 рдПрд▓рдкреА рдХреЛ рд░реЛрдХрдиреЗ рдХреЗ рд▓рд┐рдП рдЕрд╕рдВрднрд╡ рд╣реИ, рд╕рд░реВ рдХрд╛ рдПрдХ рдЕрдиреНрдп рдирд┐рдпрдВрддреНрд░рдХ: рдкреАрдПрд╕рдУрд╕реА рдореЗрдВ рдпреВрдПрд╕рдмреА рдмрд╕ рдХреА рдЧрддрд┐ рдХрдо рд╣реИ)ред

рдореЗрд░рд╛ рд╕рд┐рд░ рдПрдХ 3D рдкреНрд░рд┐рдВрдЯрд░ "рдЪрдордХрддреА" рдХреА рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЛ рдХрддрд╛рдИ рдХрд░ рд░рд╣рд╛ рд╣реИ, рдЬрд┐рд╕рдиреЗ рдореБрдЭреЗ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдкреАрдбрд╝рд╛ рджреА рд╣реИред рд╡рд╣рд╛рдБ, рд╕реЗрд╡рд╛ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд╕реНрдЯреЗрдкрд░ рдореЛрдЯрд░реНрд╕ рдореЗрдВ рд╕реАрдкреАрдпреВ рдХреЗ рд╕рдордп рдХрд╛ рдПрдХ рдкрд╛рдЧрд▓ рдкреНрд░рддрд┐рд╢рдд рд╣реЛрддрд╛ рд╣реИред рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдореИрдВрдиреЗ рдЖрд░рдЯреАрдУрдПрд╕ рдореИрдХреНрд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рд▓реЗрдЦ рдореЗрдВ рдЗрдВрдЯрд░рдкреНрдЯ рдФрд░ рдкреНрд░реЛрд╕реЗрд╕рд░ рд╕рдордп рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╣реБрдд рдмрд╛рдд рдХреАред рдРрд╕реЗ рдЕрдиреБрдорд╛рди рд╣реИрдВ рдХрд┐ рд╕реНрдЯреЗрдкрд░ рдореЛрдЯрд░реНрд╕ рдХреА рд╕рд░реНрд╡рд┐рд╕рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП UDB рдХреЗ рд▓рд┐рдП рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрд╕реНрдерд╛рдпреА рдЭреЛрдкрдбрд╝рд┐рдпреЛрдВ рдХреЛ рд▓реЗрдирд╛ рд╕рдВрднрд╡ рд╣реИ, рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдХрдореНрдкреНрдпреВрдЯреЗрд╢рдирд▓ рдХрд╛рд░реНрдп рдХреЛ рдЗрд╕ рдбрд░ рдХреЗ рдмрд┐рдирд╛ рдЫреЛрдбрд╝ рджреЗрддрд╛ рд╣реИ рдХрд┐ рдЙрд╕рдХреЗ рдкрд╛рд╕ рд╕рдорд░реНрдкрд┐рдд рд╕рдордп рд╕реНрд▓реЙрдЯ рдореЗрдВ рдРрд╕рд╛ рдХрд░рдиреЗ рдХрд╛ рд╕рдордп рдирд╣реАрдВ рд╣реЛрдЧрд╛ред

рд▓реЗрдХрд┐рди рдЗрди рдЪреАрдЬреЛрдВ рдХреЛ рдХреЗрд╡рд▓ рддрднреА рддрд░реНрдХ рджрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдЬрдм рд╡рд┐рд╖рдп рджрд┐рд▓рдЪрд╕реНрдк рд╣реЛред

Source: https://habr.com/ru/post/hi429882/


All Articles