Stlink: рдПрдХреАрдХреГрдд рдЪрд░ рдкреНрд░рдХрд╛рд░ рдХреЗ рд╕рд╛рде рд╕реНрд╡рдЪреНрдЫ рдХреЛрдб

рдХреЛ рдирд┐рд░реНрдорд┐рдд 6 рдЕрдкреНрд░реИрд▓ 2020  ┬╖  6рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: stlink-org/stlink

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

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП src/usb.c рдореЗрдВ:
image

send_recv txsize рдФрд░ rxsize рдХреЛ size_t rxsize рд░реВрдк рдореЗрдВ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдВрджрд░реНрдн рдореЗрдВ, рдЙрди рддрд░реНрдХреЛрдВ рдХреЛ int рдпрд╛ unsigned int рдбрд╛рд▓рд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдмрд┐рдирд╛ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд▓рдВрдмрд╛рдИ, рдФрд░ рдЬреЛ рдХреЛрдИ рднреА рдЗрд╕реЗ рдХреЙрд▓ рдХрд░рддрд╛ рд╣реИ рд╡рд╣ рдПрдХ рдЕрд▓рдЧ рдкреНрд░рдХрд╛рд░ рдХреЗ рддрд░реНрдХ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ ( uint32_t рдпрд╛ рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдЬрд╛рджреВ рд╕рдВрдЦреНрдпрд╛)ред 32 рдмрд┐рдЯ рд╕реЗ 64 рдмрд┐рдЯ рддрдХ рдЕрдирдЬрд╛рдиреЗ рдХрд╛рд╕реНрдЯ рдХреЙрд▓рд┐рдВрдЧ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИред рд╕рд╛рде рд╣реА, рдмрд┐рд▓реНрдб рд╡рд┐рдлрд▓рддрд╛ рдХреЛ рд░реЛрдХрдиреЗ рдХреЗ рд▓рд┐рдП, рдХрдИ рд╕реНрдкрд╖реНрдЯ рдХрд╛рд╕реНрдЯ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред

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

рдЕрдЧрд░ рджреВрд╕рд░реЛрдВ рдХреЛ рдпрд╣ рд╕рд╛рд░реНрдердХ рд▓рдЧреЗ рддреЛ рдореИрдВ рдЗрд╕реЗ рдЖрдЬрд╝рдорд╛рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ред

codfeedback codrefactoring needissuer-feedback

рд╕рднреА 6 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдЗрд╕реЗ рдПрдЬреЗрдВрдбреЗ рдореЗрдВ рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП Thxред рдЪреВрдВрдХрд┐ рдпрд╣ рдкреВрд░реЗ рдХреЛрдбрдмреЗрд╕ рдореЗрдВ рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рд╕рдорд╕реНрдпрд╛ рд╣реИ, рдореБрдЭреЗ рдЗрд╕ рд╕рдордп рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рдЗрд╕реЗ рд╕реАрдзреЗ v1.6.1 рдореЗрдВ рдбрд╛рд▓ рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдПред @martonmiklos рдиреЗ рдкрд╣рд▓реЗ рдХреЛрдб рд╢реИрд▓реА рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдХреБрдЫ рд╕рдлрд╛рдИ рдХрд░рдиреЗ рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд┐рдпрд╛ рдерд╛, рдЬрд┐рд╕реЗ рдореИрдВрдиреЗ v1.6.2 рдореАрд▓ рдХреЗ рдкрддреНрдерд░ рдореЗрдВ рдзрдХреЗрд▓ рджрд┐рдпрд╛ рдерд╛ред рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЗрд╕ рдореБрджреНрджреЗ рдХреЗ рд▓рд┐рдП рднреА рдПрдХ рдЕрдЪреНрдЫреА рдЬрдЧрд╣ рд╣реЛрдЧреА, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рдЗрд╕реЗ рдереЛрдбрд╝рд╛ рдФрд░ рдЖрдЧреЗ рдмрдврд╝рд╛рдПрдЧреАред

рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдореИрдВ рдкрд╣рд▓реЗ рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рдХреБрдЫ рд╕рдлрд╛рдИ рдХрд░ рд╕рдХреВрдВ рдФрд░ рд╡рд┐рдХрд╛рд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд╛ рдкрд╛рд▓рди рдХрд░ рд╕рдХреВрдВредЁЯШГ

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

ILP32, LLP64 рдФрд░ LP64 рдХреЗ рдмреАрдЪ рд╕рдВрдЧрддрддрд╛ рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░ long рдХреЛ int32_t рд╕реЗ рдмрджрд▓рдирд╛ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдЪрд╛рд░ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рдпрджрд┐ рдХреЛрдИ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдЗрд╕рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдЖрд╢реНрдЪрд░реНрдпреЛрдВ рд╕реЗ рдЗрдВрдХрд╛рд░ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ рд░реВрдкрд╛рдВрддрд░рдг, рд╣рдо рдЬрд╣рд╛рдВ рднреА рд╕рдВрднрд╡ рд╣реЛ рдирд┐рд╢реНрдЪрд┐рдд рдЪреМрдбрд╝рд╛рдИ рдкреВрд░реНрдгрд╛рдВрдХ рдкреНрд░рдХрд╛рд░реЛрдВ рдореЗрдВ рдЬрд╛рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ ...

@chenguokai : рдореИрдВ рдЗрд╕реЗ рдЖрдк рдкрд░ рдЫреЛрдбрд╝ рджреВрдБрдЧрд╛ред рдЖрдк рдпреЛрдЧрджрд╛рди рджреЗ рд╕рдХрддреЗ рд╣реИрдВ, рдпрджрд┐ рдЖрдк рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдФрд░ рдЖрдкрдХреЗ рдкрд╛рд╕ рдХреБрдЫ рд╕рдордп рд╣реИред

рдЬрд╝рд░реВрд░, рдореИрдВ рд░рд┐рд▓реАрдЬрд╝ рд╕реЗ рдкрд╣рд▓реЗ рдХрд░реВрдБрдЧрд╛ред рдЕрднреА рд╡реНрдпрд╕реНрдд рд╣реЛ рд░рд╣рд╛ рд╣реИ

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕