рдПрдлрдЯреАрдбреАрдЖрдИ рдмреНрд░рд┐рдЬ рдкрд░ рд░реЗрдб рдЯрд╛рдпрд░реНрд╕ рддрдХ рдкрд╣реБрдВрдЪ

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

рд▓реЗрдЦреЛрдВ рдкрд░ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рд╕реЗ, рдореИрдВрдиреЗ рджреЗрдЦрд╛ рдХрд┐ рдХреБрдЫ рдкрд╛рдардХреЛрдВ рдХрд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рд░реЗрдб рдФрд░ рдПрдлрдкреАрдЬреАрдП рд▓реЗрдирд┐рди рдФрд░ рдкрд╛рд░реНрдЯреА рдХреА рддрд░рд╣ рд╣реИрдВред рдХрд┐ рд╡реЗ рдЕрдЯреВрдЯ рд░реВрдк рд╕реЗ рдЬреБрдбрд╝реЗ рд╣реБрдП рд╣реИрдВред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдРрд╕рд╛ рдмрд┐рд▓рдХреБрд▓ рднреА рдирд╣реАрдВ рд╣реИред рдореИрдВ рд╕рд┐рд░реНрдл рдХреБрдЫ рджрд┐рд▓рдЪрд╕реНрдк рдХреЗ рд╕рд╛рде рд░реЗрдб рдХреЙрдореНрдкреНрд▓реЗрдХреНрд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рдмрд╛рддрдЪреАрдд рд╢реБрд░реВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛, рд▓реЗрдХрд┐рди рдПрдлрдкреАрдЬреАрдП рд╕реЗ рдЕрдзрд┐рдХ рджрд┐рд▓рдЪрд╕реНрдк рдХреНрдпрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ? рдЦреИрд░, рдФрд░ рдмрд╛рддрдЪреАрдд рд╢реБрд░реВ рдХрд░рдирд╛, рдПрдХ рдирдЬрд╝рд░ рдореЗрдВ рджрдЦрд▓ рджреЗрдирд╛ рдмреЗрд╡рдХреВрдлреА рд╣реИред рдФрд░ рдЕрдВрдд рдореЗрдВ, рдмрдбрд╝рд╛ рддрд╛рд░реНрдХрд┐рдХ рдмреНрд▓реЙрдХ рдкреВрд░рд╛ рд╣реЛ рдЧрдпрд╛ рд╣реИред рдФрд░ рдпрд╣ рджрд┐рдЦрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ FPGAs рдкреВрд░реЗ рд░реЗрдб рд╕реЗ рджреВрд░ рд╣реИрдВ, рдореИрдВ рдЙрдирд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдЪреАрдЬреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд▓рдЧрднрдЧ рддреАрди рд▓реЗрдЦ рдмрдирд╛рдиреЗ рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рдХрд░рддрд╛ рд╣реВрдВред рдЦреИрд░, рдФрд░ рдЗрд╕ рдмреНрд▓реЙрдХ рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдкрд╣рд▓реЗ рд╕реЗ рд╣реА FPGA рдЕрднреНрдпрд╛рд╕ рдкрд░ рдЬрд╛рдПрдВред



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


рд╕рдмрд╕реЗ рдЖрд╢реНрдЪрд░реНрдпрдЬрдирдХ рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдЬреИрд╕реЗ рд╣реА рдореИрдВрдиреЗ рдЕрдиреНрдп рд╡рд┐рд╖рдпреЛрдВ рдкрд░ рдПрдХ рд╡рд┐рд╖рдпрд╛рдВрддрд░ рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛, рдЕрдЪреНрдЫреЗ рдорд╛рд▓рд┐рдХреЛрдВ рдиреЗ рдореБрдЭреЗ рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдкрд░ рдПрдХ рдХрдард┐рди рд▓рдбрд╝рд╛рдИ рдореЗрдВ рдлреЗрдВрдХ рджрд┐рдпрд╛, рдЬрд╣рд╛рдВ рд╡реАрдПрдЪрдбреАрдПрд▓ рднрд╛рд╖рд╛ рдФрд░ рдПрдХреНрд╕рд▓рд┐рдирдХреНрд╕ рдПрдлрдкреАрдЬреАрдП рдХреЗ рд╕рд╛рде рдХрд╛рдо рдЪрд▓ рд░рд╣рд╛ рд╣реИред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдореИрдВрдиреЗ рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рдХрд▓рдо рдирд╣реАрдВ рдЙрдард╛рдпрд╛, рдФрд░ рджреВрд╕рд░реА рдмрд╛рдд, рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реИ рдХрд┐ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд▓реЗрдЦреЛрдВ рдХреА рддреИрдпрд╛рд░реА рдХреЗ рд▓рд┐рдП рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдкреНрд░рдпреЛрдЧреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ VHDL / рд╡реЗрд░рд┐рд▓реЙрдЧ рдФрд░ Xilinx / Altera рд╕реЗ рдирд┐рдкрдЯрдирд╛ рдХреБрдЫ рдореБрд╢реНрдХрд┐рд▓ рд╣реИред рддреЛ FPGAs рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХрд╣рд╛рдирд┐рдпреЛрдВ рдореЗрдВ рдПрдХ рдмреНрд░реЗрдХ рд╡реИрд╕реЗ рднреА рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

So. рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреЗ рдкрд╣рд▓реЗ рд▓реЗрдЦ рдореЗрдВ, рд╣рдордиреЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд░реЗрдб рдХреЙрдореНрдкреНрд▓реЗрдХреНрд╕ рдХреЗ рд╕рдВрд░рдЪрдирд╛рддреНрдордХ рдЖрд░реЗрдЦ рдХреА рдЬрд╛рдВрдЪ рдХреАред рдЪрд▓реЛ рдЗрд╕реЗ рдПрдХ рдмрд╛рд░ рдФрд░ рдХрд░реЗрдВред



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

рдкрд┐рдЫрд▓реЗ рдЪрдХреНрд░ рд▓реЗрдЦ
  1. Redd рдореЗрдВ рд╕реНрдерд╛рдкрд┐рдд FPGAs рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рд╕рд░рд▓ "рдлрд░реНрдорд╡реЗрдпрд░" рдХрд╛ рд╡рд┐рдХрд╛рд╕, рдФрд░ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд░реВрдк рдореЗрдВ рдореЗрдореЛрд░реА рдЯреЗрд╕реНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдбрд┐рдмрдЧрд┐рдВрдЧред
  2. Redd рдореЗрдВ рд╕реНрдерд╛рдкрд┐рдд FPGAs рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рд╕рд░рд▓ "рдлрд░реНрдорд╡реЗрдпрд░" рдХрд╛ рд╡рд┐рдХрд╛рд╕ред рднрд╛рдЧ 2. рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЛрдбред
  3. FPGA рдЖрдзрд╛рд░рд┐рдд рдкреНрд░реЛрд╕реЗрд╕рд░ рдкреНрд░рдгрд╛рд▓реА рдореЗрдВ рдПрдореНрдмреЗрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдореВрд▓ рдХрд╛ рд╡рд┐рдХрд╛рд╕ред
  4. FPGA рддрдХ рдкрд╣реБрдВрдЪ рдХреЗ рдЙрджрд╛рд╣рд░рдг рдкрд░ рдХреЗрдВрджреНрд░реАрдп рдкреНрд░реЛрд╕реЗрд╕рд░ рд░реЗрдб рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдХрд╛ рд╡рд┐рдХрд╛рд╕ред
  5. рд░реЗрдб рдПрдлрдкреАрдЬреАрдП рдореЗрдВ рд╕реАрдкреАрдпреВ рдФрд░ рдкреНрд░реЛрд╕реЗрд╕рд░ рд╕рдВрдЪрд╛рд░ рдХреЗ рдЙрджрд╛рд╣рд░рдг рдкрд░ рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рдкрд╣рд▓рд╛ рдкреНрд░рдпреЛрдЧред
  6. рдореАрд░рд╛ рдХреНрд╡рд╛рд░реНрдЯрд░рд╕реЗрд▓, рдпрд╛ рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреИрд╕реЗ рдЗрд╕ рддрд░рд╣ рдХреЗ рдЬреАрд╡рди рдореЗрдВ рдЖрдпрд╛ рд╣реИред
  7. рд░реЗрдб рдХреЗ рд▓рд┐рдП рдХреЛрдб рдЕрдиреБрдХреВрд▓рди рдХреЗ рддрд░реАрдХреЗред рднрд╛рдЧ 1: рдХреИрд╢ рдкреНрд░рднрд╛рд╡ред
  8. рд░реЗрдб рдХреЗ рд▓рд┐рдП рдХреЛрдб рдЕрдиреБрдХреВрд▓рди рдХреЗ рддрд░реАрдХреЗред рднрд╛рдЧ 2: рдЧреИрд░-рдХреИрд╢реНрдб рдореЗрдореЛрд░реА рдФрд░ рд╕рдорд╛рдирд╛рдВрддрд░ рдмрд╕ рд╕рдВрдЪрд╛рд▓рдиред
  9. рд╡реНрдпрд╛рдкрдХ рдХреЛрдб рдЕрдиреБрдХреВрд▓рди: рд╕рд┐рд╕реНрдЯрдо рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдмреЗрд╣рддрд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдШрдбрд╝реА рдЬрдирд░реЗрдЯрд░ рдХреА рдЬрдЧрд╣ред


UART рдмреНрд▓реЙрдХ (рд╕реАрд░рд┐рдпрд▓ рдкреЛрд░реНрдЯ)


рдмреНрд▓реЙрдХ рдЖрд░реЗрдЦ рдореЗрдВ, рд╣рдо FT4232 рдирд┐рдпрдВрддреНрд░рдХ рдХреЛ рджреЗрдЦрддреЗ рд╣реИрдВ рдЬреЛ 4 рд╕реАрд░рд┐рдпрд▓ рдкреЛрд░реНрдЯ (UART) рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИ:



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



рддрджрдиреБрд╕рд╛рд░, рдЙрдирдХреЗ рдкрд╛рд╕ рд╕реНрддрд░ рд╣реИрдВ - RS232 (рдкреНрд▓рд╕ рдпрд╛ рдорд╛рдЗрдирд╕ 12 рд╡реЛрд▓реНрдЯ)ред RS232 рдкреЛрд░реНрдЯ - рдЙрдирдХреЗ рд╕рд╛рде рд╕рдм рдХреБрдЫ рд╕реНрдкрд╖реНрдЯ рд╣реИ, рд╡реЗ рджреЛ рдорд╛рдирдХ DB-9 рдХрдиреЗрдХреНрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рд╣реЛрддреЗ рд╣реИрдВ,



рдФрд░ CMOS рдХреЗ рд╕реНрддрд░ рдХреЗ рд╕рд╛рде рд▓рд╛рдЗрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдХрд╣рд╛рдБ рджреЗрдЦрдирд╛ рд╣реИ? рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░ - рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рдХрдиреЗрдХреНрдЯрд░ рдкрд░ред рдЗрд╕рдХрд╛ рдкрд┐рдирдЖрдЙрдЯ рдЗрд▓реЗрдХреНрдЯреНрд░рд┐рдХрд▓ рд╕рд░реНрдХрд┐рдЯ рдЖрд░реЗрдЦ рдореЗрдВ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред UART рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдЕрдиреНрдп рдмрд╛рддреЛрдВ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╕рдВрдкрд░реНрдХ рд╣реИрдВред



рдмрд╛рд╣рд░реА рд░реВрдк рд╕реЗ, рдпрд╣ рдХрдиреЗрдХреНрдЯрд░ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рджрд┐рдЦрддрд╛ рд╣реИ:



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



UART рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдПрдХреНрд╕реЗрд╕


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

рдкреЛрд░реНрдЯ рдирд╛рдо


рдиреЗрдЯрд╡рд░реНрдХ рдкрд░ рдХрдИ рд▓реЗрдЦреЛрдВ рдФрд░ рдордВрдЪреЛрдВ рд╕реЗ, рдпрд╣ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд╣реИ рдХрд┐ рдпреВрдПрд╕рдмреА-рд╕реАрд░рд┐рдпрд▓ рдПрдбреЗрдкреНрдЯрд░ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рджрд╛рди рдХрд┐рдП рдЧрдП рдкреЛрд░реНрдЯ рдирд╛рдо рдкреНрд░рд╛рд░реВрдк / рджреЗрд╡ / ttyUSB0, / dev / ttyUSB1, рдФрд░ рдЗрддрдиреЗ рдкрд░ рд╣реИрдВред рд▓рд┐рдирдХреНрд╕ рдореЗрдВ, рд╕рднреА рдбрд┐рд╡рд╛рдЗрд╕реЛрдВ рдХреЛ рд╕рд╛рдзрд╛рд░рдг рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдорд╛рди рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ (рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдбрд┐рд╡рд╛рдЗрд╕ рд╕рдорд╛рди рдлрд╛рдЗрд▓реЗрдВ рд╣реИрдВ)ред рдЖрдЗрдП рджреЗрдЦреЗрдВ рдХрд┐ рд╣рдорд╛рд░реЗ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдХреНрдпрд╛ рдирд╛рдо рд╣реИрдВред рд╣рдо рдХрдорд╛рдВрдб рджреЗрддреЗ рд╣реИрдВ:
ls / рджреЗрд╡ /



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



рдмрд╣реБрдд рдмрдврд╝рд┐рдпрд╛! рд╣рдо рдкрджрд╛рдиреБрдХреНрд░рдо рдореЗрдВ рддрд▓реНрд▓реАрди рд╣реИрдВ, рдЕрдВрддрд░рд┐рдХреНрд╖ / рджреЗрд╡ / рдзрд╛рд░рд╛рд╡рд╛рд╣рд┐рдХ / рдмрд╛рдп-рдЖрдИрдбреА рджреЗрдЦреЗрдВ ред рдЖрдЧреЗ рджреЗрдЦрддреЗ рд╣реБрдП, рдореИрдВ рдХрд╣рддрд╛ рд╣реВрдВ рдХрд┐ рд╕рд╣реА рдкреНрд░рджрд░реНрд╢рди рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ ls рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реЛрдЧрд╛- thel рд╕реНрд╡рд┐рдЪ (рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рдХреЗ рд▓рд┐рдП рдореЗрд░реЗ рдмреЙрд╕ рдХрд╛ рдзрдиреНрдпрд╡рд╛рдж)ред рдпрд╣реА рд╣реИ, рд╣рдо рдХрдорд╛рдВрдб рджреЗрддреЗ рд╣реИрдВ:
ls тАУl / dev / рд╕реАрд░рд┐рдпрд▓ / рдмрд╛рдп-рдЖрдИрдбреА



рдПрдХ рддрд░рдл, рд╕рдм рдХреБрдЫ рдареАрдХ рд╣реИред рдЕрдм рд╣рдо рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рд╕реНрдкреЗрд╕ / рджреЗрд╡ / ttyUSBX рдореЗрдВ рдХреМрди рд╕реЗ рдирд╛рдо рдХрд┐рд╕ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рдЕрдиреБрд░реВрдк рд╣реИрдВред рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, FT4232 (рдХреНрд╡рд╛рдб) рдкреБрд▓ рджреНрд╡рд╛рд░рд╛ рдЖрдпреЛрдЬрд┐рдд рдмрдВрджрд░рдЧрд╛рд╣реЛрдВ рдХрд╛ рдирд╛рдо ttyUSB3 рд╕реЗ ttyUSB6 рд╣реИ ред рд▓реЗрдХрд┐рди рджреВрд╕рд░реА рдУрд░, рдЬрдм рдЗрд╕ рд╕рд╛рдЗрдЯ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд┐рдпрд╛ рдЧрдпрд╛, рддреЛ рдореБрдЭреЗ рдорд╣рд╕реВрд╕ рд╣реБрдЖ рдХрд┐ рдкреЗрд░рд┐рд╕ рдореЗрдВ рд╡рдЬрди рдФрд░ рдорд╛рдк рдХреЗ рдХрдХреНрд╖ рдореЗрдВ рдЖрд╡рд╢реНрдпрдХ рд░реВрдк рд╕реЗ рдПрдХ рдХрдорд░рд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдЬрд┐рд╕рдореЗрдВ рдЧрдбрд╝рдмрдбрд╝ рдХрд╛ рдорд╛рдирдХ рд░рдЦрд╛ рдЧрдпрд╛ рд╣реЛ ... рдХреНрдпреЛрдВрдХрд┐ рдХрд┐рд╕реА рддрд░рд╣ рдЖрдкрдХреЛ рдЗрд╕рдХреЗ рдореВрд▓реНрдп рдХреЛ рдорд╛рдкрдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдареАрдХ рд╣реИ, рдорд╛рди рд▓реЗрдВ рдХрд┐ рдмрдВрджрд░рдЧрд╛рд╣реЛрдВ / рджреЗрд╡ / ttyUSB0 рдФрд░ / dev / ttyUSB1 рдХреА рдХрдореА рдХреЛ рдЖрд╕рд╛рдиреА рд╕реЗ рд╕рдордЭрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдпрд╣ рдХреИрд╕реЗ рд╕рдордЭрд╛ рдЬрд╛рдП рдХрд┐ рд╕реНрдерд╛рдкрд┐рдд рдПрдлрдбреАрдбреАрдЖрдИ рдкреБрд▓ рдХреА рд╕рдВрддрд╛рдиреЛрдВ рдкрд░ рдЖрдзрд╛рд░рд┐рдд "рджреЗрд╢реА" рдмрдВрджрд░рдЧрд╛рд╣реЛрдВ рдХреЛ рд╢реАрд░реНрд╖ рддреАрди рд╕реЗ рдЧрд┐рдирд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рддреАрд╕рд░реЗ рдкрдХреНрд╖ рдХреЗ рдкреНрд░реЛрд▓рд┐рдлрд┐рдХ рдирд┐рдпрдВрддреНрд░рдХ, рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рдбрд╛рд▓рд╛ рдЧрдпрд╛, рдкреЛрд░реНрдЯ рдирдВрдмрд░ 2 рд▓рд┐рдпрд╛? рдРрд╕реЗ рдорд╛рд╣реМрд▓ рдореЗрдВ рдХреЛрдИ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░ рд╕рдХрддрд╛ рд╣реИ? рдХрд▓ рдХреЛрдИ рд╡реНрдпрдХреНрддрд┐ рдХрд┐рд╕реА рдЕрдиреНрдп рдирд┐рдпрдВрддреНрд░рдХ рдХреЛ рдХреЙрдореНрдкреНрд▓реЗрдХреНрд╕ рдореЗрдВ рдкреНрд▓рдЧ рдХрд░реЗрдЧрд╛ (рдЪреВрдВрдХрд┐ рдХреЙрдореНрдкреНрд▓реЗрдХреНрд╕ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд╡рд┐рднрд┐рдиреНрди рд╕рдореВрд╣реЛрдВ рдХреЛ рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ рд╡рд┐рднрд┐рдиреНрди рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ), рдФрд░ рдкреЛрд░реНрдЯ рдлрд┐рд░ рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓ рдЬрд╛рддреЗ рд╣реИрдВред рд╡рд░реНрдХрд┐рдВрдЧ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд▓рд┐рдП рд╣рдореЗрдВ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкрдВрдЬреАрдХрд░рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рди рдкреЛрд░реНрдЯреНрд╕ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ?

рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐ рд╕рдм рдХреБрдЫ рдЗрддрдирд╛ рдмреБрд░рд╛ рдирд╣реАрдВ рд╣реИред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдкреАрд▓рд╛ рдирд╛рдо / рджреЗрд╡ / ttyUSB3 рдФрд░ рдиреАрд▓рд╛ рдирд╛рдо / рджреЗрд╡ / рдзрд╛рд░рд╛рд╡рд╛рд╣рд┐рдХ / рдмрд╛рдп-рдЖрдИрдбреА / usb-FTDI_Quad_RS232-HS-if00-port0 рдПрдХ рд╣реА рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рджреЛ рдЙрдкрдирд╛рдо рд╣реИрдВред рдФрд░ рджреВрд╕рд░рд╛ рд╡рд┐рдХрд▓реНрдк рднреА рдкреЛрд░реНрдЯ рдирд╛рдо рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рдкрд╣рд▓реЗ рд╕реЗ рдЕрдзрд┐рдХ рд╕реНрдерд╛рдпреА рд╣реИред рд╕рдЪ рд╣реИ, рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╕рдм рдХреБрдЫ рдХреБрдЫ рдмреБрд░рд╛ рд╣реИред FT4232 рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдПрдХ рдмрд╛рд╣рд░реА рдирд┐рдпрдВрддреНрд░рдХ рдХреЛ рдЬрдЯрд┐рд▓ рдореЗрдВ рдкреНрд▓рдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рдЙрдирдХреА рд╕рдВрдЦреНрдпрд╛ рд╕реЗ рдирд┐рдкрдЯрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЖрд╡рд╢реНрдпрдХ рд╣реЛрдЧрд╛ред рдФрд░ рдпрд╣рд╛рдБ "рджреВрд╕рд░реА" рд╣рдорд╛рд░реА рд╕рд╣рд╛рдпрддрд╛ рдХреЗ рд▓рд┐рдП рдЖрддреА рд╣реИред рдЕрд░реНрдерд╛рддреН, рдПрдХ рдФрд░ рд╡реИрдХрд▓реНрдкрд┐рдХ рдирд╛рдордХрд░рдг рд╕рдореНрдореЗрд▓рдиред рд╣рдореЗрдВ рдпрд╛рдж рд╣реИ рдХрд┐ / dev / рд╕реАрд░рд┐рдпрд▓ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рди рдХреЗрд╡рд▓ / by-id рдЙрдкрдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╢рд╛рдорд┐рд▓ рд╣реИ, рдмрд▓реНрдХрд┐ рдЙрдк -рдкрде рдЙрдкрдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рднреА рд╣реИред рд╣рдо рдЗрд╕рдХреА рд╕рд╛рдордЧреНрд░реА рдХреА рдЬрд╛рдВрдЪ рдХрд░рддреЗ рд╣реИрдВ (рдпрд╣ рдПрдХ рд▓рд╛рд▓ рд░реЗрдЦрд╛ рдХреЗ рдиреАрдЪреЗ, рдЕрдЧрд▓реЗ рдЖрдВрдХрдбрд╝реЗ рдХреЗ рдиреАрдЪреЗ рд╕реНрдерд┐рдд рд╣реИ)ред



рдпрд╣рд╛рдВ рд╕рдм рдХреБрдЫ рднреМрддрд┐рдХ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рд╕реЗ рдмрдВрдзрд╛ рд╣реИред рдФрд░ рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рд╣реА рдХрдИ рдмрд╛рд░ рдХрд╣рд╛ рд╣реИ рдХрд┐ рдХреЙрдореНрдкреНрд▓реЗрдХреНрд╕ рдХреЗ рдЕрдВрджрд░ рд╕рднреА рдирд┐рдпрдВрддреНрд░рдХреЛрдВ рдХреЛ рдмреЛрд░реНрдбреЛрдВ рдореЗрдВ рдорд┐рд▓рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЖрдВрддрд░рд┐рдХ рдкрджрд╛рдиреБрдХреНрд░рдо рдирд╣реАрдВ рдмрджрд▓реЗрдЧрд╛ред рдЗрд╕ рдкреНрд░рдХрд╛рд░, /dev/serial/by-path/pci-0000:00:15.0-usb-0:6.5:1.0-port0 рдирд╛рдо рд╕рдмрд╕реЗ рдХрдард┐рди рд╣реЛрдЧрд╛ред

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

  1. рдЖрджреЗрд╢ ls тАУl / dev / serial / by-id рдЬрд╛рд░реА рдХрд░реЗрдВ ред
  2. Ls тАУl / dev / serial / by-path рдХрдорд╛рдВрдб рдЬрд╛рд░реА рдХрд░реЗрдВ ред
  3. рдмрд┐рдВрджреБ 1 рдХреЗ рдкрд░рд┐рдгрд╛рдореЛрдВ рд╕реЗ, рдЖрд╡рд╢реНрдпрдХ рдкреБрд▓ рдХреЗ рдЖрд╡рд╢реНрдпрдХ рдмрдВрджрд░рдЧрд╛рд╣ рдХреЗ рдЕрдиреБрд░реВрдк рдкреЛрд░реНрдЯ рдирд╛рдо рдвреВрдВрдвреЗрдВред рдкреИрд░рд╛рдЧреНрд░рд╛рдл рдХреЗ рдкрд░рд┐рдгрд╛рдореЛрдВ рдореЗрдВ рд╕рдорд╛рди рдкреЛрд░реНрдЯ рдирд╛рдо рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдПрдВ 2. рдЗрд╕ рдкреИрд░рд╛рдЧреНрд░рд╛рдл рдХреЗ рд╕рдВрдЧрдд рднреМрддрд┐рдХ рдирд╛рдо рд▓реЗрдВред

рдорджрд░рдмреЛрд░реНрдб рдкрд░ рдирд┐рдпрдВрддреНрд░рдХ рджреНрд╡рд╛рд░рд╛ рд╕реЗрд╡рд╛ рдХрд┐рдП рдЧрдП рдмрдВрджрд░рдЧрд╛рд╣реЛрдВ рдХреЗ рд▓рд┐рдП, рд╕рдм рдХреБрдЫ рдереЛрдбрд╝рд╛ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рд╣реИред рдпрд╣рд╛рдВ рдЖрдк рд╕рдмрд╕реЗ рд╕рд░рд▓ рдХрдорд╛рдВрдб " ls / dev " рд╕реЗ рд░рд╛рд╕реНрддрд╛ рдирд╣реАрдВ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЖрдкрдХреЛ рдХреБрдЫ рдпрд╛рдж рд░рдЦрдирд╛ рд╣реЛрдЧрд╛ (рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ, рдпрд╛ рдХрдо рд╕реЗ рдХрдо рдпрд╛рдж рд░рдЦреЗрдВ рдХрд┐ рдЖрдк рдорджрдж рдХреЗ рд▓рд┐рдП рдпрд╣рд╛рдВ рд╕рдВрдкрд░реНрдХ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ)ред рд╣рд░ рдЬрдЧрд╣ рдпрд╣ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреЛрд░реНрдЯ рдирд╛рдо ttyS0-ttyS3 рд╣реИрдВ ред рдпрд╣ рд╕рд╡рд╛рд▓ рдмрдирд╛ рд╣реБрдЖ рд╣реИ рдХрд┐ рд╣рдорд╛рд░реЗ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдЕрд╕рд▓реА рдирд╛рдо рдХреНрдпрд╛ рд╣реИрдВ? рдореИрдВрдиреЗ рдЗрд╕ рдкреНрд░рд╢реНрди рдХрд╛ рдЙрддреНрддрд░ рджреЗрддреЗ рд╣реБрдП рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдордВрддреНрд░ рдкрд╛рдпрд╛:
ls / sys / class / tty / * / рдбрд┐рд╡рд╛рдЗрд╕ / рдбреНрд░рд╛рдЗрд╡рд░

рдпрд╣рд╛рдБ рдпрд╣ рдкреНрд░рдгрд╛рд▓реА рдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╣реИ:



рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рдирд╛рдо / dev / ttyS2 рдФрд░ / dev / ttyS3 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдХреНрдпреЛрдВ - рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ред рд▓реЗрдХрд┐рди рдПрдХ рдмрд╛рдд рдФрд░ рдкреНрд░рд╕рдиреНрди рдХрд░рддреА рд╣реИ: рдпрд╣рд╛рдБ рдХреЛрдИ рд╡рд┐рд╢реЗрд╖ рдкрд░рд┐рд╡рд░реНрддрди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЗрди рд╕реНрдерд┐рд░рд╛рдВрдХ рдХреЛ рдпрд╛рдж рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдмрд┐рдирд╛ рдХрд┐рд╕реА рдбрд░ рдХреЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд╡реЗ рдмрджрд▓ рдЬрд╛рдПрдВрдЧреЗред

рдХреЛрдб рд╡рд┐рдХрд╛рд╕


рд╡рд┐рдХрд╕рд┐рдд рдХрд░рддреЗ рд╕рдордп, рдЖрдкрдХреЛ POSIX рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд▓рд┐рдП рдЕрджреНрднреБрдд рд╕реАрд░рд┐рдпрд▓ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдЧрд╛рдЗрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП (рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдкрд╣рд▓рд╛ рд╕реАрдзрд╛ рд▓рд┐рдВрдХ https://www.cmrr.umn.edu/~strupp/serial.html рд╣реИ , рд▓реЗрдХрд┐рди рдХреЛрдИ рдирд╣реАрдВ рдЬрд╛рдирддрд╛ рдХрд┐ рдпрд╣ рдХрд┐рддрдиреА рджреЗрд░ рддрдХ рдЬреАрд╡рд┐рдд рд░рд╣реЗрдЧрд╛)ред рдпрд╣ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдХрд┐ рдпрд╣ рдмрддрд╛рддрд╛ рд╣реИ рдХрд┐ рд╕рдВрдХреЗрддреЛрдВ рдХреЗ рдкреВрд░реНрдг рд╕реЗрдЯ рдХреЗ рд╕рд╛рде рдХреИрд╕реЗ рдХрд╛рдо рдХрд┐рдпрд╛ рдЬрд╛рдП, рдХреНрдпреЛрдВрдХрд┐ рдкрд░рд┐рд╕рд░ рдореЗрдВ рдмрдВрджрд░рдЧрд╛рд╣реЛрдВ рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╕рдЪ рд╣реИ, рдЖрдЬ рд╣рдо рдХреЗрд╡рд▓ рдЯреАрдПрдХреНрд╕ рдФрд░ рдЖрд░рдПрдХреНрд╕ рд▓рд╛рдЗрдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗред

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



рдЖрдЗрдП рдПрдХ рдмрдВрджрд░рдЧрд╛рд╣ рд╕реЗ рджреВрд╕рд░реЗ рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВред рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдмрдВрджрд░рдЧрд╛рд╣реЛрдВ / рджреЗрд╡рд╛рд▓рдп / рдереИрд░реЗрд╕рд▓ / рдЯрд╛рдпрдк -pci - 0000:00: 15.0 - usb-0:6.5: 1.2 - port0 рдФрд░ /dev/serial/by-path/pci-0000:00/15.0- рдЬреБрдбрд╝реЗ рд╣реБрдП рд╣реИрдВ usb-0: 6.5: 1.3-port0 ред

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

рд╕рдорд╛рди рдирдореВрдирд╛ рдХреЛрдб
#include <cstdio> #include <unistd.h> /* UNIX standard function definitions */ #include <fcntl.h> /* File control definitions */ #include <errno.h> /* Error number definitions */ #include <termios.h> /* POSIX terminal control definitions */ int OpenUART(const char* portName, speed_t baudRate) { //   int fd = open(portName, O_RDWR | O_NOCTTY | O_NDELAY); //     if (fd == -1) { return fd; } //     fcntl(fd, F_SETFL, FNDELAY); //    termios options; tcgetattr(fd, &options); // ,       // ,   .  ... cfsetspeed(&options, baudRate); //    ... // 1  ,   , 8    options.c_cflag &= ~PARENB; options.c_cflag &= ~CSTOPB; options.c_cflag &= ~CSIZE; options.c_cflag |= CS8; options.c_cflag |= (CLOCAL | CREAD); // , ... tcsetattr(fd, TCSANOW, &options); return fd; } int main() { printf("hello from ReddUARTTest!\n"); int fd1 = OpenUART("/dev/serial/by-path/pci-0000:00:15.0-usb-0:6.5:1.3-port0", 9600); int fd2 = OpenUART("/dev/serial/by-path/pci-0000:00:15.0-usb-0:6.5:1.2-port0", 9600); if ((fd1 != -1) && (fd2 != -1)) { static const unsigned char dataForSend[] = {0xff,0xfe,0xfd,0xfb}; //      write(fd1, dataForSend, sizeof(dataForSend)); unsigned char dataForReceive[128]; ssize_t cnt = 0; //     ,  , //         int readSteps = 0; //      ,   while (cnt < (ssize_t)sizeof(dataForSend)) { readSteps += 1; ssize_t rd = read(fd2, dataForReceive + cnt, sizeof(dataForReceive) - cnt); //   - ,     if (rd <= 0) { usleep(1000); } else //  -   { cnt += rd; } } //   printf("%d read operations\n", readSteps); printf("Read Data: "); for (unsigned int i = 0; i < cnt; i++) { printf("%X ", dataForReceive[i]); } printf("\n"); } else { printf("Error with any port open!\n"); } //   if (fd1 != -1) { close(fd1); } if (fd2 != -1) { close(fd2); } return 0; } 


рднрд╛рдЧреЛ - рд╣рдореЗрдВ рдЕрдиреБрдорд╛рдирд┐рдд рдкрд░рд┐рдгрд╛рдо рдорд┐рд▓рддрд╛ рд╣реИ:

 hello from ReddUARTTest! 14 read operations Read Data: FF FE FD FB 

рдпрд╣ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ 4 рдмрд╛рдЗрдЯреНрд╕ рдореЗрдВ 14 рдкреНрд░рдпрд╛рд╕ рдХрд┐рдП рдЧрдП рдереЗ, рдЕрд░реНрдерд╛рддреН рдкрдврд╝рдирд╛ рдЕрд╡рд░реБрджреНрдз рдирд╣реАрдВ рдерд╛ред рдХрднреА-рдХрднреА рд╕рд┐рд╕реНрдЯрдо рдиреЗ "рдХреЛрдИ рдирдпрд╛ рдбреЗрдЯрд╛ рдирд╣реАрдВ" рд╕реНрдерд┐рддрд┐ рд▓реМрдЯрд╛ рджреА, рдФрд░ рдХрд╛рд░реНрдпрдХреНрд░рдо рдПрдХ рдорд┐рд▓реА рд╕реЗрдХрдВрдб рдХреЗ рд▓рд┐рдП рд╕реЛ рдЧрдпрд╛ред

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



рдЕрдм рдЗрд╕ рджреГрд╢реНрдп рдХреЛ рдУрд╡рд░рд▓реЗ рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ рджреЗрдЦреЗрдВ рдХрд┐ рдХреИрд╕реЗ рд╕рдм рдХреБрдЫ рдПрдХ рд░рд┐рд╕реАрд╡рд░ рджреНрд╡рд╛рд░рд╛ рджреЛрдЧреБрдиреА рдЧрддрд┐ рд╕реЗ рд╕рдВрдЪрд╛рд▓рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛:



рдареАрдХред рдорд╛рди "1111 1110" рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП (рдбреЗрдЯрд╛ рдХрдо рд╕реЗ рдХрдо рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд┐рдЯ рдЖрдЧреЗ рдЬрд╛рддрд╛ рд╣реИ), рдЕрд░реНрдерд╛рдд 0xFEред рдкреНрд░реЗрд╖рд┐рдд рдореВрд▓реНрдп рдХрд╛ рджреВрд╕рд░рд╛ рднрд╛рдЧ рд░рд┐рд╕реЗрдкреНрд╢рди рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпреВрдирд┐рдЯ рд▓рд╛рдЗрди рдореЗрдВ рдЪреБрдкреНрдкреА рдХреЗ рдЕрдиреБрд░реВрдк рд╣реИрдВред рдпрд╛рдиреА рд╣рдордиреЗ рдПрдХ рдмрд╛рдЗрдЯ рдЯреНрд░рд╛рдВрд╕рдорд┐рдЯ рдХреА, рдПрдХ рдмрд╛рдЗрдЯ рднреА рдЖрдПрдЧреАред

рд╣рдо рд╕рддреНрдпрд╛рдкрди рдХреЗ рд▓рд┐рдП рдПрдХ рд╣реА рдЧреНрд░рд╛рдл рдмрдирд╛рдПрдВрдЧреЗ, рдЬреЛ рдкреНрд░реЗрд╖рд┐рдд 0xFE рдорд╛рди рдХреЗ рдЕрдиреБрд░реВрдк рд╣реЛрдЧрд╛:



"1111 1000" рдпрд╛ 0xF8 рдХреЗ рдорд╛рди рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░реЗрдВред рдареАрдХ рд╣реИ, рдЖрдЗрдП рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдЙрддреНрддреАрд░реНрдг рдорд╛рди 0xFD рд╕реЗ рдХреНрдпрд╛ рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░реЗрдВ



рд╣рдореЗрдВ рдорд╛рди 0xE6 рдорд┐рд▓рддрд╛ рд╣реИред рдЦреИрд░, рдкреНрд░реЗрд╖рд┐рдд рдореВрд▓реНрдп 0xFB рдХреЗ рд▓рд┐рдП рд╣рдореЗрдВ рдкреНрд░рд╛рдкреНрдд 0x9E рдорд┐рд▓рддрд╛ рд╣реИ (рдЖрдк рдЧреНрд░рд╛рдл рдХреЛ рд╕рд╛рдЬрд┐рд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЕрдкрдиреЗ рд▓рд┐рдП рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ)ред рдЕрджреНрднреБрдд! рд╣рдо 19200 рдХреЗ рд╕рд╛рде 9600 рдХреА рдЧрддрд┐ рдХреА рдЬрдЧрд╣, рдЯреЗрд╕реНрдЯ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдПрдХ рд╕рд┐рдВрдЧрд▓ рд▓рд╛рдЗрди рдмрджрд▓рддреЗ рд╣реИрдВ:

  int fd2 = OpenUART("/dev/serial/by-path/pci-0000:00:15.0-usb-0:6.5:1.2-port0", 19200); 

рд╣рдо рдХрд╛рдо рдХреЗ рдЗрд╕ рдкрд░рд┐рдгрд╛рдо рдХреЛ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВ:

 hello from ReddUARTTest! 9 read operations Read Data: FE F8 E6 9E 

рд╡реИрд╕реЗ, рдореИрдВрдиреЗ рдЗрд╕ рдЪреЗрдХ рдХреЛ рд╡реНрдпрд░реНрде рдирд╣реАрдВ рдХрд┐рдпрд╛ред рдкрд╣рд▓реЗ рддреЛ рдореИрдВрдиреЗ рдЕрдиреНрдп рдЧрддрд┐ рд╕реЗрдЯрд┐рдВрдЧ рдлрд╝рдВрдХреНрд╢рди (cfsetispeed / cfsetospeed pair) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛, рдФрд░ рдЙрдиреНрд╣реЛрдВрдиреЗ рдХрд╛рдо рдирд╣реАрдВ рдХрд┐рдпрд╛! рдЗрд╕ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╕рдордп рдкрд░ рдкрд╣рдЪрд╛рди рд▓рд┐рдпрд╛ рдЧрдпрд╛ рдФрд░ рд╣рд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛ред рдЙрдкрдХрд░рдг рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╕рдордп, рдЖрдк рдХрднреА рднреА рдЕрдВрддрд░реНрдЬреНрдЮрд╛рди рдкрд░ рднрд░реЛрд╕рд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗред рд╣рд░ рдЪреАрдЬ рдХреА рдЬрд╛рдБрдЪ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП!

рдкрд╛рд╡рд░ рд▓рд╛рдЗрди рдкреНрд░рдмрдВрдзрди 220 рд╡реЛрд▓реНрдЯ


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



рдЬрдм рд╣рдордиреЗ рдмрдВрджрд░рдЧрд╛рд╣реЛрдВ рдХреЛ рд╕реВрдЪреАрдмрджреНрдз рдХрд┐рдпрд╛, рддреЛ рд╣рдордиреЗ рдпрд╣ рдирд╛рдо рджреЗрдЦрд╛:



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



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

рднреЗрдЬреЗ рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдЖрджреЗрд╢реЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ:
рдЯреАрдордирд┐рдпреБрдХреНрддрд┐
'рдП'рдкрд╣рд▓реЗ рдЖрдЙрдЯрд▓реЗрдЯ рдХреЛ рдЪрд╛рд▓реВ рдХрд░реЗрдВ
'рдП'рдкрд╣рд▓рд╛ рдЖрдЙрдЯрд▓реЗрдЯ рдмрдВрдж рдХрд░реЗрдВ
'рдмреА'рджреВрд╕рд░рд╛ рдЖрдЙрдЯрд▓реЗрдЯ рдЪрд╛рд▓реВ рдХрд░реЗрдВ
'рдмреА'рджреВрд╕рд░рд╛ рдЖрдЙрдЯрд▓реЗрдЯ рдмрдВрдж рдХрд░реЗрдВ
'рд╕реА'рддреАрд╕рд░рд╛ рдЖрдЙрдЯрд▓реЗрдЯ рдЪрд╛рд▓реВ рдХрд░реЗрдВ (рдпрджрд┐ рдХреЛрдИ рд╣реЛ)
'рд╕реА'рддреАрд╕рд░рд╛ рдЖрдЙрдЯрд▓реЗрдЯ рдмрдВрдж рдХрд░реЗрдВ (рдпрджрд┐ рдХреЛрдИ рд╣реЛ)
'?'рдЖрдЙрдЯрд▓реЗрдЯ рдХреА рд╕реНрдерд┐рддрд┐ рдХреЛ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ

рдХрдорд╛рдВрдб '?' (рдкреНрд░рд╢реНрди рдЪрд┐рд╣реНрди) рдХреЗрд╡рд▓ рд╡рд╣реА рд╣реИ рдЬреЛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рджреЗрддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЬрд╡рд╛рдм рдореЗрдВ, 3 рдмрд╛рдЗрдЯреНрд╕ рд╣рдореЗрд╢рд╛ рдЖрддреЗ рд╣реИрдВ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдПрдХ рдЖрдЙрдЯрд▓реЗрдЯ рдХреА рд╕реНрдерд┐рддрд┐ рд╕реЗ рдореЗрд▓ рдЦрд╛рддреА рд╣реИред рджрд░рдЕрд╕рд▓, рд░рд╛рдЬреНрдп рдЖрдЬреНрдЮрд╛рдУрдВ рдХреЗ рдЕрдиреБрд░реВрдк рд╣реЛрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, 'рдПрдмреАрд╕реА' - рд╕рднреА рддреАрди рдЖрдЙрдЯрд▓реЗрдЯ рдЕрдм рдмрдВрдж рд╣реЛ рдЧрдП рд╣реИрдВ, 'рдПрдмреАрд╕реА' - рдкрд╣рд▓рд╛ рдЪрд╛рд▓реВ рд╣реИ, рджреВрд╕рд░рд╛ рдФрд░ рддреАрд╕рд░рд╛ рдмрдВрдж рд╣реИ, рдЖрджрд┐ред

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

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

рдЗрд╕рдХреЗ рдмрд╛рдж, рдЗрд╕реЗ рдХрдорд╛рдВрдб рд╕реЗ рдЪрд▓рд╛рдПрдБ:
minicom тАУD / dev / ttyACM0

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

рдлрд┐рд░ рд╣рдо рдЯрд░реНрдорд┐рдирд▓ рдореЗрдВ рдкреНрд░рд╢реНрди рдЪрд┐рд╣реНрди рджрдмрд╛рддреЗ рд╣реИрдВ рдФрд░ рддреБрд░рдиреНрдд (рдмрд┐рдирд╛ рд▓рд╛рдЗрди рдлреАрдб) рд╣рдореЗрдВ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдорд┐рд▓рддреА рд╣реИ



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



рд╕рдм рдХреБрдЫ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред 220 рд╡реЛрд▓реНрдЯ (рдХрдорд╛рдВрдб 'рдмреА') рдХреЛ рдмрдВрдж рдХрд░рдирд╛ рди рднреВрд▓реЗрдВред рдЖрдк рдХреНрд░рдорд┐рдХ рд░реВрдк рд╕реЗ ctrl + A рджрдмрд╛рдХрд░ рдЯрд░реНрдорд┐рдирд▓ рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓ рд╕рдХрддреЗ рд╣реИрдВ, рдлрд┐рд░ рдПрдХреНрд╕ред рдкреНрд░рдпреЛрдЧ рдкреВрд░рд╛ рд╣реЛ рдЧрдпрд╛ рд╣реИред

рдПрд╕рдкреАрдЖрдИ рдФрд░ рдЖрдИ 2 рд╕реА рдЯрд╛рдпрд░


рдПрд╕рдкреАрдЖрдИ рдмрд╕реЗрдВ (рдЬреЛ рдХреНрд╡рд╛рдб-рдПрд╕рдкреАрдЖрдИ рдореЛрдб рдореЗрдВ рднреА рдХрд╛рдо рдХрд░ рд╕рдХрддреА рд╣реИрдВ) рдФрд░ рдЖрдИ 2 рд╕реА рдХреЛ рд╕рд╛рд░реНрд╡рднреМрдорд┐рдХ рдкреБрд▓реЛрдВ рдХреЗ рд╕рдВрдпреЛрдЬрди рдореЗрдВ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдпрд╣реА рд╣реИ, рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдХреЙрдореНрдкреНрд▓реЗрдХреНрд╕ рдореЗрдВ рджреЛ рдкреБрд▓ рд╣реЛрддреЗ рд╣реИрдВ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдХреЛ рдПрд╕рдкреАрдЖрдИ рдореЛрдб рдпрд╛ рдЖрдИ 2 рд╕реА рдореЗрдВ рд╕реНрд╡рд┐рдЪ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд╕рдВрд░рдЪрдирд╛рддреНрдордХ рдЖрд░реЗрдЦ рдореЗрдВ, рд╕рдВрдмрдВрдзрд┐рдд рдЕрдиреБрднрд╛рдЧ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:



рдЕрдВрддрд┐рдо рдмрд╕реЛрдВ рдХреЛ рдЪрд╛рд▓реВ рдХрд░рдиреЗ рдХрд╛ рд╕рд╛рд░ рд╡рд┐рджреНрдпреБрдд рд╕рд░реНрдХрд┐рдЯ рдЖрд░реЗрдЦ рд╕реЗ рджрд┐рдЦрд╛рдИ рджреЗрддрд╛ рд╣реИред рдХреЗрд╡рд▓ рджреЛ рдирд┐рдпрдВрддреНрд░рдХреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ:



рдЗрд╕ рдкреНрд░рдХрд╛рд░, SPI рдФрд░ I 2 C рдмрд╕реЗрдВ рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рдкреНрд░рддрд┐рдЪреНрдЫреЗрдж рдирд╣реАрдВ рдХрд░рддреА рд╣реИрдВред рдЙрдирдХреЗ рд╕рдВрдпреБрдХреНрдд рдЙрдкрдпреЛрдЧ рдкрд░ рдкреНрд░рддрд┐рдмрдВрдз рдХреЗрд╡рд▓ FT4222H рдирд┐рдпрдВрддреНрд░рдХ рдореЗрдВ FTDI рджреНрд╡рд╛рд░рд╛ рд▓рдЧрд╛рдП рдЧрдП рдкреНрд░рддрд┐рдмрдВрдзреЛрдВ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдкреНрд░рд▓реЗрдЦрди рдореЗрдВ рдХрд╣рд╛ рдЧрдпрд╛ рд╣реИ рдХрд┐ рдПрдХ рд╕рдордп рдореЗрдВ рдХреЗрд╡рд▓ рдПрдХ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рд╕рдХреНрд░рд┐рдп рд╣реЛ рд╕рдХрддрд╛ рд╣реИ:



рд▓рд╛рдЗрдиреЛрдВ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХреИрд╕реЗ рдХрд░реЗрдВ CFG1_0..CFG1_1 рдФрд░ CFG2_0..CFG2_1, рд╣рдо рдЕрдЧрд▓реЗ рд▓реЗрдЦ рдореЗрдВ рдорд┐рд▓реЗрдВрдЧреЗред рдЕрдм рд╣рдо рдорд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рд╡реЗ рд╕рднреА рдЕрд╢рдХреНрдд рд╣реИрдВред

рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдирд┐рдпрдВрддреНрд░рдХ FT4222H USB2.0 TO QUADSPI / I2C BRIDGE IC рдХреЗ рд╕рд╛рде рдирд┐рдпрдВрддреНрд░рдХ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдмрд╣реБрдд рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╡рд░реНрдгрд┐рдд рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдо рдирд┐рдпрдВрддреНрд░рдХреЛрдВ рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдореЛрдб рдХреА рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗред рдЙрд▓реНрд▓реЗрдЦрд┐рдд рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рд╕реЗ рд╕рдм рдХреБрдЫ рдмрд╣реБрдд рд╕реНрдкрд╖реНрдЯ рд╣реИред

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

рдХреЛрдб рдЬреЛ рдПрд╕рдкреАрдЖрдИ рдмрд╕ рдХреЛ рдбреЗрдЯрд╛ рднреЗрдЬрддрд╛ рд╣реИред
 #include "../ftd2xx/ftd2xx.h" #include "../LibFT4222/inc/LibFT4222.h" void SpiTest (int pos) { FT_HANDLE ftHandle = NULL; FT_STATUS ftStatus; FT4222_STATUS ft4222Status; //   ftStatus = FT_Open(pos, &ftHandle); if (FT_OK != ftStatus) { // open failed printf ("error: Cannot Open FTDI Device\n"); return; } ft4222Status = FT4222_SPIMaster_Init(ftHandle, SPI_IO_SINGLE, CLK_DIV_4, CLK_IDLE_LOW, CLK_LEADING, 0x01); if (FT4222_OK != ft4222Status) { printf ("error: Cannot switch to SPI Master Mode\n"); // spi master init failed return; } uint8 wrBuf [] = {0x9f,0xff,0xff,0xff,0xff,0xff,0xff}; uint8 rdBuf [sizeof (wrBuf)]; uint16 dwRead; ft4222Status = FT4222_SPIMaster_SingleReadWrite (ftHandle,rdBuf,wrBuf,sizeof (wrBuf),&dwRead,TRUE); if (FT4222_OK != ft4222Status) { printf ("error: Error on ReadWrite\n"); } else { printf ("received: "); for (int i=0;i<6;i++) { printf ("0x%X ",rdBuf[i]); } printf ("\n"); } FT4222_UnInitialize(ftHandle); FT_Close(ftHandle); } 


рдПрд╕рдкреАрдЖрдИ рдмрд╕ рдкрд╛рд░реНрдЯреНрд╕


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

рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдпрд╣ FTDI рдкреБрд▓реЛрдВ рдХреЗ рд▓рд┐рдП рд╕реНрд╡реАрдХрд╛рд░реНрдп рдирд╣реАрдВ рд╣реИред рдЙрдкрд░реЛрдХреНрдд рдХреЛрдб рдЯреБрдХрдбрд╝рд╛ рдмрд╕ рдореЗрдВ рдЗрди рджрд╛рд▓реЛрдВ рдХреЛ рдЙрддреНрдкрдиреНрди рдХрд░реЗрдЧрд╛:



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

рдЯрд╛рдпрд░ рднрд╛рдЧреЛрдВ I 2 C


рдХреЗрд╡рд▓ рдПрдХ рдЪреАрдЬ рдЬреЛ рд╕рдордЭ рдореЗрдВ рдЖрддреА рд╣реИ рд╡рд╣ рдЬрдЯрд┐рд▓ рдХреЗ рдкрдХреНрд╖ рдореЗрдВ I 2 C рдмрд╕ рдХреЗ рд▓рд┐рдП рдкреБрд▓-рдЕрдк рдкреНрд░рддрд┐рд░реЛрдзреЛрдВ рдХреА рдЕрдиреБрдкрд╕реНрдерд┐рддрд┐ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рдирд╛ рд╣реИред рд▓реЗрдХрд┐рди рдпрд╣ рд╕рд╛рдорд╛рдиреНрдп рд╣реИ: рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдбрд┐рд╡рд╛рдЗрд╕ рдХреА рддрд░рдл, рдЕрднреА рднреА рдПрдХ рд▓рд┐рдлреНрдЯ рд╣реИред рдЖрдЬрдХрд▓, рдПрдХ рдкреБрд▓-рдЕрдк рдХрд┐рд╕реА рднреА рд╡реЛрд▓реНрдЯреЗрдЬ рдХреЗ рд▓рд┐рдП рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рддрд░реНрдХрд╕рдВрдЧрдд рд╣реИ рдХрд┐ рдпрд╣ рд▓рдХреНрд╖реНрдп рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ рд╕реЗрдЯ рд╣реИред

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


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



рд▓реЗрдХрд┐рди рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдм рдХреБрдЫ рдереЛрдбрд╝рд╛ рдФрд░ рджрд┐рд▓рдЪрд╕реНрдк рд╣реИ ...

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


All Articles