рдкреБрд░рд╛рдиреЗ рджрд┐рдиреЛрдВ рдХреЛ рдорд┐рд▓рд╛рддреЗ рд╣реБрдП: ST332 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ i386 рдФрд░ ATA рдХрдВрдЯреНрд░реЛрд▓рд░ рдХреЗ рдмреАрдЪ рдбреЗрдЯрд╛ рд╕реНрдЯреНрд░реАрдо рдХреЛ рдЗрдВрдЯрд░рд╕реЗрдкреНрдЯ рдХрд░рддрд╛ рд╣реИ

рд╢реБрдн рджреЛрдкрд╣рд░, рдкреНрд░рд┐рдп Khabrovitesред рдЖрдЬ рдХреЗ рд▓реЗрдЦ рдореЗрдВ, рд╣рдо рдЙрджрд╛рд╕реАрдирддрд╛ рдореЗрдВ рд▓рд┐рдкреНрдд рд╣реИрдВ, рдЕрдЪреНрдЫреЗ рдкреБрд░рд╛рдиреЗ рд▓реЛрд╣реЗ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдЗрд╕рдореЗрдВ рдХреЛрдИ рдХрдо рдЕрдЪреНрдЫрд╛ рдирдпрд╛ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред рдЙрд╕реА рд╕рдордп, рдЖрдЗрдП рд╣рдо рдпрд╛рдж рдХрд░реЗрдВ рдХрд┐ ISA рдмрд╕ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдФрд░ рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рдмрд╛рд╣реНрдп рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рд╕рд╛рде x86 рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреИрд╕реЗ рд╕рдВрдЪрд╛рд░ рдХрд░рддрд╛ рд╣реИред

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


рдХреБрдЫ рджрд┐рди рдкрд╣рд▓реЗ рдореИрдВ рдЕрдкрдиреЗ рдкрд╣рд▓реЗ рдХрдВрдкреНрдпреВрдЯрд░ - рдмреВрдврд╝реЗ рдЖрджрдореА 386, рдПрдПрдордбреА (рдПрдо 386-рдбреАрдПрдХреНрд╕) рдХреЗ рдкреНрд░реЛрд╕реЗрд╕рд░ рдкрд░ 4 рдореЗрдЧрд╛рдмрд╛рдЗрдЯ рд░реИрдо, рдПрдХ рд╡реАрдЬреАрдП рд╡реАрдбрд┐рдпреЛ рдХрд╛рд░реНрдб рдФрд░ рдПрдХ рдорд▓реНрдЯреА-рдХрд╛рд░реНрдб рдХреЗ рд╕рд╛рде рдорд╛рд░рд╛ рдЧрдпрд╛ рдерд╛ рдЬреЛ рдбреНрд░рд╛рдЗрд╡ рдХрдВрдЯреНрд░реЛрд▓рд░, рд╣рд╛рд░реНрдб рдбреНрд░рд╛рдЗрд╡, рд╕рдорд╛рдирд╛рдВрддрд░ рдФрд░ рдзрд╛рд░рд╛рд╡рд╛рд╣рд┐рдХ рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рд▓реЗрддрд╛ рд╣реИред рдмрдВрджрд░рдЧрд╛рд╣реЛрдВред
рдмреЗрд╢рдХ, рд╡рд╣ рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ рдЕрдкрдиреЗ рдорд╛рдорд▓реЗ рд╕реЗ рдмрдЪ рдЧрдпрд╛ рдерд╛ рдФрд░ рдкреНрд░рд╛рдЪреАрди, рдореГрдд рдХрдард┐рди рд╕реЗ - рдЕрдм рд╡рд╣ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд╛рд░реНрдб рдХреА рдПрдХ рдЬреЛрдбрд╝реА рдХреЗ рд╕рд╛рде рд╕рд┐рд░реНрдл рдПрдХ рдорджрд░рдмреЛрд░реНрдб рдерд╛ред рдХреБрдЫ рд╕рд╛рд▓ рдкрд╣рд▓реЗ рдореИрдВрдиреЗ рдЗрд╕реЗ рдПрдХ рдирдИ рд╣рд╛рд░реНрдб рдбреНрд░рд╛рдЗрд╡ рд╕реЗ рдЬреЛрдбрд╝рд╛ рдерд╛, 10 рдЬреАрдмреА (рд╢реБрд░реБрдЖрдд рдореЗрдВ рдЗрд╕рдореЗрдВ рдХреЗрд╡рд▓ 200 рдореЗрдЧрд╛рдмрд╛рдЗрдЯ рдХреА рдбрд┐рд╕реНрдХ рдереА), рдЬрд┐рд╕ рдкрд░ рдореИрдВрдиреЗ FreeDOS рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдерд╛ред



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

рд▓реЛрд╣рд╛


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

рдЫрд╡рд┐

рдпрд╣ рд╕рдм рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ? рдорд╛рди рд▓реЗрдВ рдХрд┐ рд╣рдореЗрдВ рдЕрдкрдиреЗ рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ рдХрдИ рдПрд▓рдИрдбреА рдЪрд╛рд▓реВ / рдмрдВрдж рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдЕрдкрдиреЗ ISA- рдмреЛрд░реНрдб рдкрд░ рдПрдХ рд░рдЬрд┐рд╕реНрдЯрд░ рдЪрд┐рдк рд▓рдЧрд╛рдПрдВрдЧреЗ , рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЬреИрд╕реЗ рдХрд┐ 74HC273 ред
рдпрд╣ рд╕рдмрд╕реЗ рдЖрдо 8-рдмрд┐рдЯ "рдХреБрдВрдбреА" рд╣реИ рдЬреЛ рдпрд╣ рдпрд╛рдж рд░рдЦрддрд╛ рд╣реИ рдХрд┐ рд╕рд┐рдЧреНрдирд▓ рджреНрд╡рд╛рд░рд╛ рдЗрдирдкреБрдЯ рдХреЛ рдХреНрдпрд╛ рдЦрд┐рд▓рд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ред рд░рдЬрд┐рд╕реНрдЯрд░ рдХреЗ рдЖрдЙрдЯрдкреБрдЯ рдХреЛ рдПрд▓ рдИ рдбреА рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ рдФрд░ рдЙрдирдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рднреВрд▓ рдЬрд╛рдПрдВред рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ, ISA рдмрд╕ рдореЗрдВ рдПрдХ рдЙрдкрдХрд░рдг рдХреЗ рд╕рд╛рде рдмрд╛рддрдЪреАрдд рджреЛ рддрд░реАрдХреЛрдВ рд╕реЗ рд▓рд╛рдЧреВ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИред

  1. рдореЗрдореЛрд░реА рдореИрдкрд┐рдВрдЧ рдХреА рдорджрдж рд╕реЗ - рдлрд┐рд░ рд╣рдо рдореЗрдореЛрд░реА рдХреЗ рд░реАрдб / рд░рд╛рдЗрдЯ рд╕рд┐рдЧреНрдирд▓ рдХреЛ рдбрд┐рдХреЛрдб рдХрд░реЗрдВрдЧреЗ рдФрд░ DRAM рдХрдВрдЯреНрд░реЛрд▓рд░ рдХреЗ рдмрдЬрд╛рдп рдмрд╕ рдореЗрдВ рд░рд┐рдЬрд▓реНрдЯ рдЖрдЙрдЯрдкреБрдЯ рдХрд░реЗрдВрдЧреЗ - рдпрд╣ рд╡реАрдбрд┐рдпреЛ рдХрд╛рд░реНрдб рдХреИрд╕реЗ рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рдХреА рд╡реАрдбрд┐рдпреЛ рдореЗрдореЛрд░реА рдХреЛ рдХрдВрдкреНрдпреВрдЯрд░ рдХреА рдореЗрдореЛрд░реА рдХреЗ рдПрдбреНрд░реЗрд╕ рд╕реНрдкреЗрд╕ рдореЗрдВ рдореИрдк рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдХрдВрдкреНрдпреВрдЯрд░ рдХреЗ рд▓рд┐рдП рд╡реАрдбрд┐рдпреЛ рдХрд╛рд░реНрдб рдХреА рдореЗрдореЛрд░реА рдореЗрдВ рд▓рд┐рдЦрдирд╛ рдЙрд╕рдХреЗ рд░реИрдо рд╕реЗ рд▓рд┐рдЦрдиреЗ рд╕реЗ рдЕрд▓рдЧ рдирд╣реАрдВ рд╣реИ рдФрд░ рд╕рд╛рдорд╛рдиреНрдп рдПрдордУрд╡реА рдХрдорд╛рдВрдб рджреНрд╡рд╛рд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
  2. рдЙрди рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдЬрд╣рд╛рдВ рдбреЗрдЯрд╛ рдХреЗ рдмрдбрд╝реЗ рдмреНрд▓реЙрдХ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИ, рддрдерд╛рдХрдерд┐рдд "I / O рд╕реНрдкреЗрд╕" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ - рдкрд░рд┐рдзреАрдп рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдЖрд╡рдВрдЯрд┐рдд рдПрдХ рдЕрд▓рдЧ рдкрддрд╛ рд╕реНрдерд╛рди рдФрд░ 16 рдкрддреЗ рдмрд┐рдЯреНрд╕ рддрдХ рд╕реАрдорд┐рддред рдпрд╣ IN рдФрд░ OUT рдХрдорд╛рдВрдб рджреНрд╡рд╛рд░рд╛ рдПрдХреНрд╕реЗрд╕ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (I / O рдкреЛрд░реНрдЯреНрд╕ рдХреЛ рдкрдврд╝реЗрдВ рдФрд░ рд▓рд┐рдЦреЗрдВ)

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, "рдЕрд▓рдЧ рдкрддреЗ рдХреА рдЬрдЧрд╣" рд╢рдмреНрджреЛрдВ рдХреЗ рдкреАрдЫреЗ рдПрдХ рд╢рд╛рд░реАрд░рд┐рдХ рд░реВрдк рд╕реЗ рд╕рд░рд▓ рдЗрдХрд╛рдИ рдирд┐рд╣рд┐рдд рд╣реИ: ISA рдмрд╕ рдореЗрдВ 4 рд╕рд┐рдЧреНрдирд▓ рд╣реИрдВ - MEMW, MEMR, IOR, IOW ред рдореЗрдореЛрд░реА ( MOV ) рдХреЛ рдкрдврд╝рдиреЗ / рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╛ IO ( IN , OUT ) рдХреЛ рдкрдврд╝рдиреЗ / рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдХрдорд╛рдВрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рддреЗ рд╕рдордп, рд╡рд╛рдВрдЫрд┐рдд рдкрддрд╛ рдПрдХ рд╣реА рдмрд╕, рд▓рд╛рдЗрдиреЛрдВ A0-A19 ISA рдкрд░ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдбреЗрдЯрд╛ рднреА рдЗрд╕реА рддрд░реНрдЬ рдкрд░ рдЬрд╛рддрд╛ рд╣реИ - D0-D15 ред рдЕрдВрддрд░ рдХреЗрд╡рд▓ рдЗрддрдирд╛ рд╣реИ рдХрд┐ рдореЗрдореЛрд░реА рд╕реЗ рдкрдврд╝рддреЗ рд╕рдордп, рдореЗрдореЛрд░рд┐рдпрд▓ рд▓рд╛рдЗрди рдкрд░ рд╕рдХреНрд░рд┐рдп рд╕реНрддрд░ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрдм рдореЗрдореЛрд░реА - рдПрдордИрдбрдмреНрд▓реНрдпреВ , рдЖрдИрдУ рдкреЛрд░реНрдЯ рд╕реЗ рдкрдврд╝рддреЗ рд╕рдордп - рдЖрдИрдУрдЖрд░ , рдЗрд╕реЗ рд▓рд┐рдЦрддреЗ рд╕рдордп - рдЖрдИрдУрдбрдмреНрд▓реНрдпреВ ред
рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдПрдХ рд░рдЬрд┐рд╕реНрдЯрд░ рдФрд░ рдПрд▓рдИрдбреА рдХреЗ рд╕рд╛рде рд╕рдмрд╕реЗ рд╕рд░рд▓ рдбрд┐рд╡рд╛рдЗрд╕ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рд╣рдореЗрдВ рдЬрд┐рд╕ рдкрддреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рд╡рд╣ рдмрд╕ рдкрд░ рд╕реЗрдЯ рд╣реИ (рд╣рдореЗрдВ рдпрд╛рдж рд╣реИ рдХрд┐ рдХреЛрдИ рд╣рдореЗрдВ рдкрддрд╛ рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИ, рд╣рдореЗрдВ рдПрдХ рдкрддрд╛ рдЪреБрдирдирд╛ рд╣реЛрдЧрд╛ рдЬреЛ рдореМрдЬреВрджрд╛ рдкрд░рд┐рдзреАрдпреЛрдВ рдХреЗ рд╕рд╛рде рд╕рдВрдШрд░реНрд╖ рдирд╣реАрдВ рдХрд░реЗрдЧрд╛), рдФрд░ IOW рд╕рд┐рдЧреНрдирд▓ рдкрд░, рд╣рдорд╛рд░реЗ рд░рдЬрд┐рд╕реНрдЯрд░ рдореЗрдВ рд▓рд╛рдЗрдиреЛрдВ D0-D8 рд╕реЗ рдбреЗрдЯрд╛ рдХреА рд░рд┐рдХреЙрд░реНрдбрд┐рдВрдЧ рд╕рдХреНрд╖рдо рдХрд░реЗрдВред
рдХрдИ рд░рдЬрд┐рд╕реНрдЯрд░реЛрдВ рд╡рд╛рд▓реЗ рдХрдИ рдЬрдЯрд┐рд▓ рдЙрдкрдХрд░рдгреЛрдВ рдореЗрдВ, рд╡рд░рд┐рд╖реНрда рдкрддрд╛ рд▓рд╛рдЗрдиреЗрдВ рдбрд┐рдХреЛрдбрд░ рдореЗрдВ рдЬрд╛рддреА рд╣реИрдВ, рдЬрдм рд╡реЗ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рдХреБрдЫ "рдЖрдзрд╛рд░" рдкрддреЗ рдХреЗ рд╕рд╛рде рдореЗрд▓ рдЦрд╛рддреА рд╣реИрдВ, рддреЛ рдПрдХ рд╕рдХреНрд░рд┐рдп рдЖрдЙрдЯрдкреБрдЯ рд╕рд┐рдЧреНрдирд▓ рдмрдирд╛рддреЗ рд╣реИрдВ, рдЬрдмрдХрд┐ рдЫреЛрдЯреЗ рд▓реЛрдЧреЛрдВ рдХреЛ рд╕рдВрдмреЛрдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд░рдЬрд┐рд╕реНрдЯрд░ рдирдВрдмрд░ рдмрдирд╛рддреЗ рд╣реИрдВред
рдЪрд▓реЛ рдПрдХ рдЕрдзрд┐рдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЙрджрд╛рд╣рд░рдг рдкрд░ рдЪрд▓рддреЗ рд╣реИрдВ - рд╣рдорд╛рд░реЗ рдПрдЯреАрдП рдирд┐рдпрдВрддреНрд░рдХред рдЕрдкрдиреЗ рдХрд╛рдо рдХреЗ рд╕рд┐рджреНрдзрд╛рдВрддреЛрдВ рдХреА рдмреЗрд╣рддрд░ рд╕рдордЭ рдХреЗ рд▓рд┐рдП, рдореЗрд░рд╛ рд╕реБрдЭрд╛рд╡ рд╣реИ рдХрд┐ рдЖрдк рдУрдПрд╕рдбреАрд╡ рд╡рд┐рдХреА рдХреЗ рд▓реЗрдЦ рдХреЛ рдкрдврд╝реЗрдВред
рдпрд╣ рдиреМ IO рд░рдЬрд┐рд╕реНрдЯрд░реЛрдВ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рдЖрда рдХреЛ рдкрдВрдХреНрддрд┐ рдореЗрдВ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЖрдзрд╛рд░ рдкрддрд╛ 0x1F0 рд╣реИ ред рдиреМрд╡рд╛рдВ, рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, 0x3F6 рдкрд░ рд╕реНрдерд┐рдд рд╣реИ, рдЬреЛ рдХреБрдЫ рд╣рдж рддрдХ рдбрд┐рдХреЛрдбрд┐рдВрдЧ рдпреЛрдЬрдирд╛ рдХреЛ рдЬрдЯрд┐рд▓ рдмрдирд╛рддрд╛ рд╣реИред
рдмреЗрд╢рдХ, рд╣рдореЗрдВ рдХрдВрдЯреНрд░реЛрд▓рд░ рдкрд░ рд╕рднреА рдПрдбреНрд░реЗрд╕ рд▓рд╛рдЗрдиреНрд╕ рдирд╣реАрдВ рдорд┐рд▓реЗрдВрдЧреА рдФрд░ рдЙрд╕ рдкрд░ рдПрдХ рдбрд┐рдХреЛрдбрд░ рдмрдирд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЕрдиреНрдпрдерд╛ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреБрдЫ рднреА рдирд╣реАрдВ рд╣реИ - 8 рдореЗрдЧрд╛рд╣рд░реНрдЯреНрдЬ рдмрд╕ рдХреА рдШрдбрд╝реА рдХреА рдЖрд╡реГрддреНрддрд┐, IO рдЪрдХреНрд░, рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдХреЗ рдЕрдиреБрд╕рд╛рд░, 4 рдЪрдХреНрд░реЛрдВ рддрдХ рд░рд╣рддрд╛ рд╣реИ, рдЬреЛ рд╣рдореЗрдВ 72 рдореЗрдЧрд╛рд╣рд░реНрдЯреНрдЬ рдкрд░ рдХреЗрд╡рд▓ 36 рдШрдбрд╝реА рдЪрдХреНрд░ рджреЗрддрд╛ рд╣реИред рд╡рд┐рдЪрд╛рд░ рдХреЗ рд▓рд┐рдПред рдЗрд╕рд▓рд┐рдП, рд╣рдо рд╕рд╕реНрддреЗ рдЕрд╕рддрдд рд▓реЙрдЬрд┐рдХ рдЪрд┐рдкреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред
рдЕрдЧрд░ рдпрд╣ рдиреМрд╡рд╛рдВ рд░рдЬрд┐рд╕реНрдЯрд░ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ рдЬреЛ 0x3F6 рдкрд░ рдЪрд┐рдкрдХ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рд╣рдореЗрдВ рдПрдХ рд╕рд░реНрдХрд┐рдЯ рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА рдЬреЛ рд╢реВрдиреНрдп рдП 9 рдФрд░ рдП 3 рдХреА рд▓рд╛рдЗрдиреЛрдВ рдкрд░ рд╕реЗрдЯ рд╣реЛрдиреЗ рдкрд░ рдПрдХ рд╕рдХреНрд░рд┐рдп рд╕рд┐рдЧреНрдирд▓ рджреЗрддрд╛ рд╣реИ, рдФрд░ рдП 4-рдП 8 рдкрд░ рдПрдХ (рдЬреЛ рдХрд┐ рдкрддреЗ 0x1F рдХреЗ рд▓рд┐рдП рд╣реИ) ..) ред ISA рдХрд╛рд░реНрдбреЛрдВ рдореЗрдВ A9 рд╕реЗ рдЕрдзрд┐рдХ рдкреБрд░рд╛рдиреЗ рдмрд┐рдЯреНрд╕ рдЖрдорддреМрд░ рдкрд░ рдбрд┐рдХреЛрдб рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВ, рдКрдкрд░ рджрд┐рдП рдЧрдП рдкрддреЗ рдкрд░ рдПрдХ рд╣реА рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рдПрдХреНрд╕реЗрд╕ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдкрд░ рдзреНрдпрд╛рди рдирд╣реАрдВ рджреЗрддреЗ рд╣реИрдВред
рддреАрди рдХрдо рд╕реЗ рдХрдо рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд┐рдЯреНрд╕ рдХрд╛ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдирд┐рдпрдВрддреНрд░рдХ рдХреЛ рд╕реМрдВрдкрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдХрд╛рд╢, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЕрднреА рднреА рдПрдХ рдЧреИрд░ рдкрдВрдЬреАрдХреГрдд рд░рдЬрд┐рд╕реНрдЯрд░ 0x3F6 рд╣реИ ред
рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╕реНрдерд┐рддрд┐ (рд╕рдХреНрд░рд┐рдп рд░реЗрдЦрд╛рдПрдВ A4-A8 рдФрд░ рдирд┐рд╖реНрдХреНрд░рд┐рдп A3 ) рд╣рдореЗрд╢рд╛ рд╕рдВрддреБрд╖реНрдЯ рд░рд╣рддреА рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рдпреЗ рдмрд┐рдЯреНрд╕ 0x1F (..) рдФрд░ 0x3F6 рджреЛрдиреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдВрдХреЗрддрд┐рдд рдЕрд╡рд╕реНрдерд╛рдУрдВ рдореЗрдВ рд╣реЛрддреЗ рд╣реИрдВ ред рдЙрдирдХреЗ рд╕рд╛рде рдПрдХ рд╢рд░реНрдд рдЬреЛрдбрд╝реА рдЬрд╛рддреА рд╣реИ, рдЬрд┐рд╕реЗ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рддреИрдпрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ: рд╕рдХреНрд░рд┐рдп A9 рдХреЗ рд╕рд╛рде - A1 рдФрд░ A2 рдкрд░ рд╕рдХреНрд░рд┐рдп рд╕реНрддрд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП (рдкрддрд╛ 0x3F6 )
рд╡рд╣ рд╣реИ,

CS0 = A8 & A7 & A6 & A5 & A4 & ~A3 CS1 = A1 & A2 & A9 CS2 = CS0 & (~A9 | CS1) 

Logic.Ly рдСрдирд▓рд╛рдЗрди рд▓реЙрдЬрд┐рдХ рд╕рд░реНрдХрд┐рдЯ рд╕рд┐рдореНрдпреБрд▓реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, рдореИрдВрдиреЗ рдЗрд╕ рд╕рд░реНрдХрд┐рдЯ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдореЗрд░реЗ рдкрд╛рд╕ рдореМрдЬреВрдж рдорд╛рдЗрдХреНрд░реЛ-рд╕рд░реНрдХрд┐рдЯреНрд╕ рдкрд░ рдЖрдзрд╛рд░рд┐рдд - 74HC04, рдПрдХ рдХреНрд╡рд╛рдб рдПрд▓рд┐рдореЗрдВрдЯ рдиреЙрдЯ, 74HC30 - рдПрдХ рдЖрда-рдЗрдирдкреБрдЯ NAND рдФрд░ 74HC10, рдПрдХ рдЯреНрд░рд┐рдкрд▓ рдереНрд░реА-рдЗрдирдкреБрдЯ рдХрд╛рдВрдб рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдХрд┐рдпрд╛ред
рдЪреВрдБрдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреЛрдИ OR рддрддреНрд╡ рдирд╣реАрдВ рд╣реИ, рд╣рдо рдбреА рдореЙрд░реНрдЧрди рдХреЗ рдирд┐рдпрдореЛрдВ рдХреЛ рдпрд╛рдж рдХрд░рддреЗ рд╣реИрдВ - рдПрдХ рд╕рдВрдпреБрдЧреНрдорди рдХреА рдЙрдкреЗрдХреНрд╖рд╛ рдирдХрд╛рд░рд╛рддреНрдордХрддрд╛ рдХрд╛ рдПрдХ рд╡рд┐рдШрдЯрди рд╣реИ рдФрд░ рдПрдХ рд╡рд┐рдШрдЯрди рдХрд╛ рдПрдХ рдирд┐рд╖реЗрдз рдирдХрд╛рд░рд╛рддреНрдордХрддрд╛рдУрдВ рдХрд╛ рдПрдХ рд╕рдВрдпреЛрдЬрди рд╣реИ, рдпрд╛, рддрд╛рд░реНрдХрд┐рдХрддрд╛рдУрдВ рдХреЗ рд░реВрдк рдореЗрдВ

 ~(A&B) = ~A | ~B ~(A|B) = ~A & ~B 

рд╣рдо рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗ:

  ~( ~ (~A9 | CS1))) = ~(A9&~CS1) - = (A9 NAND ~CS1) CS2 = CS0 & (A9 NAND ~CS1) 

рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рд╢реБрджреНрдз AND рднреА рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдо рдЗрд╕рдХреЗ рдШрдЯрдХреЛрдВ рдХреЛ рддреАрди-рдЗрдирдкреБрдЯ NAND рдмреНрд▓реЙрдХ рдореЗрдВ рдлрд╝реАрдб рдХрд░реЗрдВрдЧреЗ рдФрд░ рдбреНрд░реЙрдк-рдСрдл рдЗрдВрдЯрд░рдкреНрдЯ рдореЗрдВ рдЬрд╛рдПрдВрдЧреЗред
рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рд╕рднреА рддрд░реНрдХ рддреАрди рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдмрд┐рд▓реНрдХреБрд▓ рдлрд┐рдЯ рдмреИрдарддреЗ рд╣реИрдВред



IOR рдпрд╛ IOW рдкрд░ рдПрдХ рд╕рдХреНрд░рд┐рдп рд╕реНрддрд░ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреЛ рдЗрди рд╢рд░реНрддреЛрдВ рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛рддрд╛ рд╣реИ (рдпрд╣ рдордд рднреВрд▓реЛ рдХрд┐, рдорд╛рдирдХ рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдЙрди рдкрд░ рд╕рдХреНрд░рд┐рдп рд╕реНрддрд░ рдХрдо рд╣реИ, рдЕрд░реНрдерд╛рдд, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЙрд▓реНрдЯреЗ рд╕рдВрдХреЗрдд рд╣реИрдВ, ~ IOR рдФрд░ ~ IOW ):
 CS = CS2 & (IOR | IOW) (IOR|IOW) = ~(~(IOR & IOW) ) = ~(~IOR & ~ IOW) = (IOR NAND IOW) CS = CS2 & (IOR NAND IOW) 

рдЕрдВрддрд┐рдо рдЪрд┐рддреНрд░ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:



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



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



рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рдЕрд╕реНрдерд╛рдпреА рд░реВрдк рд╕реЗ рдмрд╛рдИрдВ рдУрд░ ( A3-A9 ), рджрд╛рдИрдВ рдУрд░ рдирд┐рдЪрд▓реЗ рд▓реЛрдЧреЛрдВ ( A0-A2 ) рдкрд░ рд╡рд░рд┐рд╖реНрда рдкрддрд╛ рдЗрдирдкреБрдЯ рддрдп рдХрд┐рдП рд╣реИрдВ, рдФрд░ рдмреАрдЪ рдореЗрдВ рдореИрдВ CS2 рд╕рд┐рдЧреНрдирд▓ рдХрд╛ рдЙрддреНрдкрд╛рджрди рдХрд░рддрд╛ рд╣реВрдВред

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



рдпрд╣, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рдПрдХ рдмрд╕ рдШрдбрд╝реА рд╣реИ рдЬрд┐рд╕рдХреА рдЖрд╡реГрддреНрддрд┐ рдЖрдорддреМрд░ рдкрд░ 8 рдореЗрдЧрд╛рд╣рд░реНрдЯреНрдЬ рд╣реИред рдореЗрд░реА рдорджрд░рдмреЛрд░реНрдб рдкрд░, рдЗрд╕рдХреА рдЖрд╡реГрддреНрддрд┐ 7.19 рдореЗрдЧрд╛рд╣рд░реНрдЯреНрдЬ рд╣реИ, рдЬреЛ BIOS рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдореЗрдВ рдкрд░рд┐рд▓рдХреНрд╖рд┐рдд рд╣реЛрддреА рд╣реИред рдЬрд╛рд╣рд┐рд░рд╛ рддреМрд░ рдкрд░, рдпрд╣ рд▓реЛрд╣реЗ рдХреА рдПрдХ рд╡рд┐рд╢реЗрд╖рддрд╛ рд╣реИ - BIOS рдиреЗ рдореБрдЭреЗ рдЗрд╕ рдЖрд╡реГрддреНрддрд┐ рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреА, рдпрд╛ рдХрдо рд╕реЗ рдХрдо рдЗрд╕реЗ рдареАрдХ рд╕реЗ 8 рдореЗрдЧрд╛рд╣рд░реНрдЯреНрдЬ рдкрд░ рд╕реЗрдЯ рдХрд┐рдпрд╛, рд╣рдардкреВрд░реНрд╡рдХ 7.19 рдореЗрдЧрд╛рд╣рд░реНрдЯреНрдЬ рдХреА рд╕реНрдерд╛рдкрдирд╛ рдХреАред рдУрд╣ рдареАрдХ рд╣реИред
рд╣рдо рдЕрдкрдиреЗ рд╕рд░реНрдХрд┐рдЯ рдХреЗ рдЗрдирдкреБрдЯ рдХреЗ рд╕рдВрдкрд░реНрдХреЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХрд░рддреЗ рд╣реИрдВ - рдЙрдирдореЗрдВ рд╕реЗ рдХрд┐рд╕реА рдкрд░ рднреА рдкреНрд░рд╣рд╛рд░ рдХрд░рдиреЗ рд╕реЗ рд╣рдореЗрдВ рдСрд╕рд┐рд▓реЛрд╕реНрдХреЛрдк рд╕реНрдХреНрд░реАрди рдкрд░ рдПрдХ рдЕрд░рд╛рдЬрдХ рд╕рдВрдХреЗрдд рдорд┐рд▓реЗрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рд╕рд┐рд╕реНрдЯрдо рд▓рдЧрд╛рддрд╛рд░ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдкрддреЗ рдФрд░ рдмрдВрджрд░рдЧрд╛рд╣реЛрдВ рддрдХ рдкрд╣реБрдВрдЪрддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП рдпрджрд┐ рдкреНрд░рд╡реЗрд╢ рджреНрд╡рд╛рд░ рдкрд░ рд╕рдиреНрдирд╛рдЯрд╛ рд╣реИ, рддреЛ рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рд╕рдВрдкрд░реНрдХ рдмрдВрдж рд╣реЛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдЖрдкрдХреЛ рдЗрд╕реЗ рджреЛрдмрд╛рд░рд╛ рдЬрд╛рдВрдЪрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рдЕрдм рд╣рдорд╛рд░реЗ CS2 рд╕рд┐рдЧреНрдирд▓ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ рдФрд░ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЪрд┐рддреНрд░ рджреЗрдЦреЗрдВ:



рдпрд╣ рдХрд╛рдлреА рдЕрдкреЗрдХреНрд╖рд┐рдд рд╣реИ - IOR рдФрд░ IOW рд╕рд┐рдЧреНрдирд▓ CS2 рдХреЗ рдЧрдарди рдореЗрдВ рднрд╛рдЧ рдирд╣реАрдВ рд▓реЗрддреЗ рд╣реИрдВ, рддрд╛рдХрд┐ рдпрд╣ рд╕рдХреНрд░рд┐рдп рд╣реЛ рдЬрд╛рдП рдЬрдм рдмрд╕ рдкрд░ рдкрддрд╛ рдЙрд╕реА рдХреЗ рд╕рд╛рде рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реЛ рдЬрд┐рд╕реЗ рд╣рдордиреЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдерд╛ ( 0x1F0-0x1F7 рдФрд░ 0x3x6 )ред рд╕рд┐рд╕реНрдЯрдо рдирд┐рдпрдорд┐рдд рдбреАрдЖрд░рдПрдПрдо рдЙрддреНрдерд╛рди рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдореЗрдВ рдПрдХ рд╕реБрдВрджрд░ рдЖрд╡рдзрд┐рдХ рд╕рдВрдХреЗрдд рдорд┐рд▓рддрд╛ рд╣реИред рдЕрдм рдЖрд╕реНрдЯрд╕реАрд▓рд╕реНрдХрдк рдХреЗ рд╕реНрд╡реАрдк рдФрд░ рд╕реНрддрд░реЛрдВ рдХреЛ рд╕рдорд╛рдпреЛрдЬрд┐рдд рдХрд░рдиреЗ рдХрд╛ рд╕рдордп рд╣реИ, рдЗрд╕рдХреЗ рд╕рднреА рдорд╣рд┐рдорд╛ рдореЗрдВ рд╕рдВрдХреЗрддреЛрдВ рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдПред
рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдХрд┐ рд╕рдм рдХреБрдЫ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рд╣рдо рд╕рд░реНрдХрд┐рдЯ рдХреЛ рдбреА-рдПрдирд░реНрдЬреЗрдЯ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рдЕрдВрдд рддрдХ рдЦрддреНрдо рдХрд░рддреЗ рд╣реИрдВ, рдЬреИрд╕реЗ рддрд╛рд░реЛрдВ рдХрд╛ рдПрдХ рдирд╛рд░рдХреАрдп рд╣реИрд╢ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛:



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



рдФрд░ рдЖрд╕реНрдЯрд╕реАрд▓рд╕реНрдХрдк рд╕реНрдХреНрд░реАрди рдкрд░ - рдпрд╣:



рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рд╣рдо рд╕рд╣реА рд╣реИрдВ, рд╣рдо рдбрд┐рд╕реНрдХ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓рддреЗ рд╣реИрдВ, рдПрдХрд▓-рдореЛрдб рдСрд╕рд┐рд▓реЛрд╕реНрдХреЛрдк рдЪрд╛рд▓реВ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдзреНрдпрд╛рди рд╕реЗ рдЗрд╕рдХреА рд╕реНрдХреНрд░реАрди рдкрд░ рджреЗрдЦрддреЗ рд╣реИрдВ - рдХреБрдЫ рднреА рдирд╣реАрдВ! рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛ рдХрд┐ рд╣рдо рдХрд┐рддрдирд╛ рдЗрдВрддрдЬрд╛рд░ рдХрд░рддреЗ рд╣реИрдВ, рд╕реАрдПрд╕ рд╕рдХреНрд░рд┐рдп рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ! рд▓реЗрдХрд┐рди рдЬреИрд╕реЗ рд╣реА рд╣рдо рдбрд┐рд╕реНрдХ рдбрд┐рдЯреЗрдХреНрд╢рди рдореЗрдВ рдЬрд╛рддреЗ рд╣реИрдВ, рд╣рдо рдлрд┐рд░ рд╕реЗ рдПрдХ рдкрд░рд┐рдЪрд┐рдд рддрд╕реНрд╡реАрд░ рдкрдХрдбрд╝ рд▓реЗрддреЗ рд╣реИрдВ, рдЬреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдорд╛рдирдХреЛрдВ рдХреЗ рдЕрдиреБрд░реВрдк рд╣реЛрддреА рд╣реИ - I / O рдЪрдХреНрд░ рдкрд┐рдЫрд▓реЗ рдЪрд╛рд░ рдШрдбрд╝реА рдЪрдХреНрд░ред
рдЦреИрд░, рдпрд╣ рдПрд╕рдЯреАрдПрдо 32 рдХреЗ рд╕рд╛рде рдмреЛрд░реНрдб рд▓реЗрдиреЗ рдФрд░ рд╕рд┐рд╕реНрдЯрдо рд╕реЗ рдЬреБрдбрд╝рдиреЗ рдХрд╛ рд╕рдордп рд╣реИ!
рдореИрдВ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рд╣реИ:

ISA рдбреЗрдЯрд╛ рдмрд╕ ( D0 - D7 ) GPIOD.0 рд╕реЗ рдЬреБрдбрд╝реА - GPIOD.7 ,
рддреАрди рдирд┐рдореНрди рдкрддрд╛ рд▓рд╛рдЗрдиреЗрдВ ( A0 - A2 ) - GPIOD.8 - GPIOD.10 ,
рдкрддреЗ A9 рдХреА рд░реЗрдЦрд╛ GPIOD.11 рдХреЗ рд▓рд┐рдП рд╣реИ (рдЖрдЦрд┐рд░рдХрд╛рд░, рд╣рдореЗрдВ рдпрд╣ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕ рдмрд┐рдЯ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА рдХрд┐ рдХреЙрд▓ 0x1F6 рдкрд░ рдирд╣реАрдВ, рдмрд▓реНрдХрд┐ 0x3F6 рдкрд░ рдЬрд╛рддреА рд╣реИ !)
IOW рдФрд░ IOR рд▓рд╛рдЗрдиреЗрдВ GPIOD.12 рдФрд░ GPIOD.13 рддрдХ ред
рд╕реАрдПрд╕ рд╕рд┐рдЧреНрдирд▓ - GPIOB.0 рдХреЛ

рдЕрдм, GPIOB.0 рдкрд░ рд╣рд╕реНрддрдХреНрд╖реЗрдк рдХрд░рддреЗ рд╕рдордп, рд╣рдореЗрдВ рдмрд╕ GPIOD-> IDR (рдЗрдирдкреБрдЯ рдбреЗрдЯрд╛ рд░рдЬрд┐рд╕реНрдЯрд░) рдкрдврд╝рдирд╛ рд╣реЛрдЧрд╛ , рдЬрд┐рд╕рдореЗрдВ рдирд┐рдЪрд▓реЗ 8 рдмрд┐рдЯреНрд╕ рд╡рд╛рдВрдЫрд┐рдд рдбреЗрдЯрд╛ рд╣реЛрдВрдЧреЗ, рдЕрдЧрд▓реЗ рдЪрд╛рд░ рдмрд┐рдЯреНрд╕ рдкрддреЗ рд╣реЛрдВрдЧреЗ (рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╕рдВрднрд╛рд╡рд┐рдд рд╕рдВрдпреЛрдЬрди 0000 - 0111 рдФрд░ 1011 , рдкреЛрд░реНрдЯ 0x1F00 рдХреЗ рдЕрдиреБрд░реВрдк рд╣реЛрдВрдЧреЗ) - 0x1F7 рдФрд░ 0x3F6 ), рдЕрдЧрд▓реЗ рджреЛ - рдореЛрдб рджреНрд╡рд╛рд░рд╛ ( 01 рдкрд░ рдкрдврд╝реЗрдВ рдпрд╛ 10 рдкрд░ рд▓рд┐рдЦреЗрдВ)ред
рдпрд╣рд╛рдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкрд░ рдзреНрдпрд╛рди рджреЗрдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ - рдЕрдЧрд░ рдЕрдЪрд╛рдирдХ рд╣рдореЗрдВ рдореЛрдб рдмрд┐рдЯреНрд╕ рдХреЗ рд╕рд╛рде рдПрдХ рдкрд░рд┐рдгрд╛рдо рдорд┐рд▓рддрд╛ рд╣реИ рдЬреЛ рдПрдХ рдЕрдорд╛рдиреНрдп рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╣реИрдВ - 00 рдпрд╛ 11 , рдпрд╣ рд╣рдореЗрдВ рдХрд╛рдо рдХрд░рдиреЗ рдХреА рддреНрд░реБрдЯрд┐ рдХрд╛ рд╕рдВрдХреЗрдд рджреЗрдЧрд╛ - рдпрд╣ рддрдереНрдп рдмрд╣реБрдд рдЬрд▓реНрдж рд╣реА рдХрд╛рдо рдореЗрдВ рдЖ рдЬрд╛рдПрдЧрд╛ред
рддреЛ, рд╣рдо рдПрдХ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдХреЛ рдкрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВред

рдореБрд▓рд╛рдпрдо


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

 GPIO_InitTypeDef GPIO_InitStructure; EXTI_InitTypeDef EXTI_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOD|RCC_APB2Periph_GPIOB|RCC_APB2Periph_AFIO, ENABLE); GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPD; GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0|GPIO_Pin_1|GPIO_Pin_2|GPIO_Pin_3| GPIO_Pin_4|GPIO_Pin_5|GPIO_Pin_6|GPIO_Pin_7 |GPIO_Pin_8|GPIO_Pin_9|GPIO_Pin_10|GPIO_Pin_11| GPIO_Pin_12|GPIO_Pin_13; GPIO_Init(GPIOD, &GPIO_InitStructure); GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU; GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0; GPIO_Init(GPIOB, &GPIO_InitStructure); GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2; GPIO_Init(GPIOB, &GPIO_InitStructure); GPIO_EXTILineConfig(GPIO_PortSourceGPIOB, GPIO_PinSource0); EXTI_InitStructure.EXTI_Line = EXTI_Line0; EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt; EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Falling; EXTI_InitStructure.EXTI_LineCmd = ENABLE; EXTI_Init(&EXTI_InitStructure); NVIC_InitTypeDef NVIC_InitStructure; NVIC_SetVectorTable(NVIC_VectTab_FLASH, 0x0); NVIC_PriorityGroupConfig(NVIC_PriorityGroup_0); NVIC_InitStructure.NVIC_IRQChannel = EXTI0_IRQn; NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0; NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0; NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; NVIC_Init(&NVIC_InitStructure); 

рдФрд░ рдпрд╣рд╛рдБ рдмрд╛рдзрд╛ рд╣реИрдВрдбрд▓рд░ рдХреЛрдб рд╣реИ:

 uint16_t Log[1024]; uint16_t ptr=0; void EXTI0_IRQHandler() { Log[ptr]=GPIOD->IDR; ptr++; EXTI_ClearITPendingBit(EXTI_Line0); } 

рдЯреЗрд╕реНрдЯ, рдбрд┐рдмрдЧрд┐рдВрдЧ рдФрд░ рдлрд┐рдирд┐рд╢рд┐рдВрдЧ


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

 58453 54527 42069 38143 42069 38143 ... 

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

 var busData = uint.Parse(entry); uint data = (busData & 0xFF); uint address = ((busData & 0xFF00) >> 8); uint rw = (address & 0x30)>>4; address = (address & 0x0F); 

рд╣рд╛рд▓рд╛рдБрдХрд┐, рд╣рдо рдЗрд╕ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЛ рдЪрд▓рд╛рдПрдВрдЧреЗ, рдореБрдЭреЗ рдПрдХ рдмрдбрд╝реА рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝рд╛ - рдлрд╝рд╛рдЗрд▓ рдХреЗ рдХрдИ рд░рд┐рдХреЙрд░реНрдб рдПрдХреНрд╕реЗрд╕ рдореЛрдб 11 рд╕реЗ рдереЗ , рдЬрд┐рд╕рдХрд╛ рдорддрд▓рдм рдерд╛ рдХрд┐ рдХреЛрдИ рд░реАрдб / рд░рд╛рдЗрдЯ рд╕рд┐рдЧреНрдирд▓ рдирд╣реАрдВ рдерд╛ред рдЪреВрдВрдХрд┐ рдЗрдВрдЯрд░рдкреНрд░рд┐рдЯ рдХрд╛ рдкреНрд░рд╡реЗрд╢ рдХреЗрд╡рд▓ рдЗрди рд╕рдВрдХреЗрддреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЗ рд╕рд╛рде рд╕рдВрднрд╡ рдерд╛, рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдирд┐рд╖реНрдХрд░реНрд╖ рдирд┐рдХрд╛рд▓рд╛ рдХрд┐ рдЗрдВрдЯрд░реИрдк рдмрд╕ рдХреЗ рдЪрдХреНрд░ рд╕реЗ рдЕрдзрд┐рдХ рд╕рдордп рддрдХ рд░рд╣рддрд╛ рд╣реИ, рдФрд░ рдореЗрд░реЗ рдкрд╛рд╕ рд╡реИрдз рдбреЗрдЯрд╛ рдкрдврд╝рдиреЗ рдХрд╛ рд╕рдордп рдирд╣реАрдВ рд╣реИред
рдЗрд╕ рдкрд░рд┐рдХрд▓реНрдкрдирд╛ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рд░реБрдХрд╛рд╡рдЯ рдХреЗ рдкреНрд░рд╡реЗрд╢ рджреНрд╡рд╛рд░ рдкрд░ рдкрд┐рди GPIOB.2 рд╕реЗ 1 рд╕реЗрдЯ рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛, рдФрд░ рдЗрд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓рдиреЗ рдкрд░ 0 рдкрд░ рд░реАрд╕реЗрдЯ рдХрд░ рджрд┐рдпрд╛, рдЬрд┐рд╕рдХреЗ рдмрд╛рдж рдореИрдВрдиреЗ рдЗрд╕ рдкрд░ рдПрдХ рдЖрд╕реНрдЯрд╕реАрд▓рд╕реНрдХрдк рдЬрд╛рдВрдЪ рд▓рдЯрдХрд╛ рджреАред
рдкрд░рд┐рдгрд╛рдо рдирд┐рд░рд╛рд╢рд╛рдЬрдирдХ рдерд╛:



рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдЗрдирдкреБрдЯ рдХреЗ рд╕рд╛рде рд╡рд╛рджрд╛ рдХрд┐рдП рдЧрдП 12 рдШрдбрд╝реА рдЪрдХреНрд░реЛрдВ рдХреЗ рдмрд╛рд╡рдЬреВрдж, рд╕рд┐рд╕реНрдЯрдо I / O рдЪрдХреНрд░ рдХреЗ рдЕрдВрдд рдореЗрдВ рдЗрдВрдЯрд░реИрдк рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рддрд╛ рд╣реИред рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рд╡рд┐рд╢реЗрд╖рддрд╛ (рдирдЧреНрди) рдиреЗ рднреА рдорджрдж рдирд╣реАрдВ рдХреА, рдЕрдВрддрд░ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдорд╣рддреНрд╡рд╣реАрди рдерд╛ред
рдЗрд╕рдиреЗ рдореБрдЭреЗ рдкрд░реЗрд╢рд╛рди рдХрд┐рдпрд╛, рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рдирд┐рдпрдВрддреНрд░рдХ рдХреЛ рдУрд╡рд░рдХреНрд▓реЙрдХ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ - рд╡рд╣реА рдПрд╡реАрдЖрд░ рдУрд╡рд░рдХреНрд▓реЙрдХрд┐рдВрдЧ рдореЗрдВ рдмрд╣реБрдд рдЕрдЪреНрдЫреЗ рдереЗ, рдХреНрдпреЛрдВ рдирд╣реАрдВ рдЬрд╛рдВрдЪ рдХрд░реЗрдВ рдХрд┐ рдПрд╕рдЯреАрдПрдо 32 рдЗрд╕рдХреЗ рд╕рд╛рде рдХреИрд╕реЗ рдХрд░ рд░рд╣рд╛ рд╣реИред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ system_stm32f10x.c рдлрд╝рд╛рдЗрд▓ рдкрд░ рдЬрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рд╕рд┐рд╕реНрдЯрдо рдШрдбрд╝реА рдХреЛ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рд▓рд┐рдП SetSysClockTo72 , рдФрд░ рд▓рд╛рдЗрди рдЦреЛрдЬреЗрдВ

 RCC->CFGR |= (uint32_t)(RCC_CFGR_PLLSRC_HSE | RCC_CFGR_PLLMULL9); 

рдЗрд╕ рдкрдВрдХреНрддрд┐ рдореЗрдВ, рдЖрдкрдХреЛ рдирд┐рд░рдВрддрд░ RCC_CFGR_PLLMULL9 рдХреЛ рдХреБрдЫ рдФрд░ рдореЗрдВ рдмрджрд▓рдирд╛ рдЪрд╛рд╣рд┐рдПред рдореИрдВ рддреБрд░рдВрдд рдХрд╣реВрдВрдЧрд╛ - рдореИрдВрдиреЗ рд╕рднреА рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рдФрд░ рдЕрдВрддрддрдГ рдЕрдзрд┐рдХрддрдо рдореВрд▓реНрдп, RCC_CFGR_PLLMULL16 рдкрд░ рдмрд╕ рдЧрдпрд╛ред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдирд┐рдпрдВрддреНрд░рдХ рдкреВрд░реА рддрд░рд╣ рд╕реЗ 72 рдХреЗ рдмрдЬрд╛рдп 128 рдореЗрдЧрд╛рд╣рд░реНрдЯреНрдЬ рдХреА рдЖрд╡реГрддреНрддрд┐ рдкрд░ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдШрд╛рдпрд▓ рд╣реЛ рдЧрдпрд╛, рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдмрд┐рдирд╛ рдЖрдзрд╛рд░ рдХреЗ рднреАред
рд╡реИрд╕реЗ, рдЖрдИрдПрд╕рдП рдмрд╕ рд╕реАрдПрд▓рдХреЗ рдХреЗ рд▓рд┐рдП рдирд┐рдпрдВрддреНрд░рдХ рдШрдбрд╝реА рд╕рд┐рдЧреНрдирд▓ рдХреЛ рдЯрд╛рдИ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рддрд╛рдХрд┐ рдЗрд╕рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗ, рд▓реЗрдХрд┐рди рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдбрд┐рдмрдЧ рдмреЛрд░реНрдб рдкрд░ рдХреНрд╡рд╛рд░реНрдЯрд░ рдХреЛ рдорд┐рд▓рд╛рдк рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛, рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдРрд╕рд╛ рдирд╣реАрдВ рдХрд┐рдпрд╛ред
рдЖрдЗрдП рджреЗрдЦреЗрдВ рдХрд┐ рдЖрд╕реНрдЯрд╕реАрд▓рд╕реНрдХрдк рдЖрдЙрдЯрдкреБрдЯ рдЕрдм рдХреНрдпрд╛ рд╣реИ:



рдЕрдВрдд рдореЗрдВ, рд╣рдордиреЗ рдЗрд╕реЗ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╕рдордп рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдЗрдВрдЯрд░рдЯреНрд░реИрдк рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджрд┐рдпрд╛! рдЖрдЗрдП рдлрд┐рд░ рд╕реЗ рдЗрдирдкреБрдЯ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ рдФрд░ рдЗрд╕рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВред
рдореИрдВрдиреЗ рдХрд╛рд░реНрдпрдХреНрд░рдо рдореЗрдВ рдХреБрдЫ рдФрд░ рдЬреЛрдбрд╝рд╛ рддрд╛рдХрд┐ рд░рд┐рдкреЛрд░реНрдЯ рддреИрдпрд╛рд░ рд╣реЛ рдЬрд╛рдП рдФрд░ рддреБрд░рдВрдд рд░рдЬрд┐рд╕реНрдЯрд░реЛрдВ рдХреЗ рдирд╛рдо рдПрдХреНрд╕реЗрд╕ рдХрд┐рдП рдЬрд╛ рд╕рдХреЗрдВред рдЧрд▓рдд рдПрдХреНрд╕реЗрд╕ рдореЛрдб рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рд░рд┐рдкреЛрд░реНрдЯ рдореЗрдВ рдЕрдорд╛рдиреНрдп рдбреЗрдЯрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рдкрдВрдХреНрддрд┐ рдЬреЛрдбрд╝реА рдЬрд╛рддреА рд╣реИред
рдпрд╣рд╛рдБ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХрд╛ рдкрд░рд┐рдгрд╛рдо рд╣реИ:
 WRITE: Cylinder Low [0x1F4] VALUE: 0x55 READ: Cylinder Low [0x1F4] VALUE: 0x55 WRITE: Cylinder Low [0x1F4] VALUE: 0xAA READ: Cylinder Low [0x1F4] VALUE: 0xAA WRITE: Cylinder Low [0x1F4] VALUE: 0x0F READ: Cylinder Low [0x1F4] VALUE: 0x0F WRITE: Cylinder Low [0x1F4] VALUE: 0x00 READ: Cylinder Low [0x1F4] VALUE: 0x00 READ: Status [0x1F7] VALUE: 0x50 WRITE: Drive/Head [0x1F6] VALUE: 0xA0 READ: Status [0x1F7] VALUE: 0x50 WRITE: Drive/Head [0x1F6] VALUE: 0x04 WRITE: Drive/Head [0x1F6] VALUE: 0x00 READ: Status [0x1F7] VALUE: 0x50 WRITE: Drive/Head [0x1F6] VALUE: 0xA0 READ: Status [0x1F7] VALUE: 0x50 WRITE: Drive/Head [0x1F6] VALUE: 0xA0 READ: Status [0x1F7] VALUE: 0x50 WRITE: Command [0x1F7] VALUE: 0x10 READ: Status [0x1F7] VALUE: 0x50 READ: Status [0x1F7] VALUE: 0x50 WRITE: Drive/Head [0x1F6] VALUE: 0xA0 READ: Status [0x1F7] VALUE: 0x50 WRITE: Drive/Head [0x1F6] VALUE: 0xA0 READ: Status [0x1F7] VALUE: 0x50 WRITE: Command [0x1F7] VALUE: 0xEC READ: Status [0x1F7] VALUE: 0x58 READ: Data [0x1F0] VALUE: 0x5A READ: Data [0x1F0] VALUE: 0xFF READ: Data [0x1F0] VALUE: 0x00 READ: Data [0x1F0] VALUE: 0x10 READ: Data [0x1F0] VALUE: 0x00 READ: Data [0x1F0] VALUE: 0x00 READ: Data [0x1F0] VALUE: 0x3F READ: Data [0x1F0] VALUE: 0x00 READ: Data [0x1F0] VALUE: 0x00 READ: Data [0x1F0] VALUE: 0x00 READ: Data [0x1F0] VALUE: 0x45 ... 

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

 WRITE: Cylinder Low [0x1F4] VALUE: 0x55 READ: Cylinder Low [0x1F4] VALUE: 0xFF WRITE: Cylinder Low [0x1F4] VALUE: 0x55 READ: Cylinder Low [0x1F4] VALUE: 0xFF ... WRITE: Cylinder Low [0x1F4] VALUE: 0x55 READ: Cylinder Low [0x1F4] VALUE: 0xFF WRITE: Cylinder Low [0x1F4] VALUE: 0x55 

рдлрд┐рд░ рдпрд╣ рдПрдХ 0x10 рдХрдорд╛рдВрдб рднреЗрдЬрддрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдореВрд▓реНрдп рдХреГрдкрдпрд╛ mark_ablov рджреНрд╡рд╛рд░рд╛ рд╕рдВрдХреЗрдд рджрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдФрд░ рдЬреЛ рдПрдХ рдкреБрд░рд╛рдирд╛ рд░рд┐рдХреИрд▓рд┐рдмреНрд░реЗрд╢рди рдХрдорд╛рдВрдб рд╣реИ, рдЬреЛ рдбрд┐рд╕реНрдХ рдХреЛ рдЕрдкрдиреЗ рдЪреБрдВрдмрдХреАрдп рдкреНрд░рдореБрдЦреЛрдВ рдХреЛ рд╕реЗрдХреНрдЯрд░ 0. рдореЗрдВ рдлрд┐рд░ рд╕реЗ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд░рддрд╛ рд╣реИред рдЙрд╕рдХреЗ рдмрд╛рдж, BIOS рд╕реНрдерд┐рддрд┐ рдмрд╛рдЗрдЯ рдХреА рдЬрд╛рдВрдЪ рдХрд░рддрд╛ рд╣реИ, рдХрдорд╛рдВрдб рдХреЗ рдкреВрд░рд╛ рд╣реЛрдиреЗ рдХрд╛ рдЗрдВрддрдЬрд╛рд░ рдХрд░ рд░рд╣рд╛ рд╣реИ (рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рд╣рд╛рд░реНрдб рдбреНрд░рд╛рдЗрд╡ рднреА BUSY рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред , рддреБрд░рдВрдд рдЬрд╡рд╛рдм рджрд┐рдпрд╛ рдХрд┐ рдЙрд╕рдиреЗ рдкреВрд░рд╛ рдХрд┐рдпрд╛)ред
рдФрд░ рдЕрдВрдд рдореЗрдВ - рдХрдорд╛рдВрдб 0xEC , DRIVE IDENTIFY , рдЬрд┐рд╕рдХреЗ рдЬрд╡рд╛рдм рдореЗрдВ рд╣рд╛рд░реНрдб рдбрд┐рд╕реНрдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ 256 16-рдмрд┐рдЯ рд╢рдмреНрдж рджреЗрддрд╛ рд╣реИред
рдкреЛрд░реНрдЯ 0x1F0 рд╕реЗ рдЙрдиреНрд╣реЗрдВ рдкрдврд╝рдирд╛ рд╢реБрд░реВ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, BIOS рд░рдЬрд┐рд╕реНрдЯрд░ 0x1F7 рд╕реЗ рдПрдХ рд╕реНрдЯреЗрдЯрд╕ рдмрд╛рдЗрдЯ рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░рддрд╛ рд╣реИ, рдбрд┐рд╕реНрдХ рдХреЗ рддреИрдпрд╛рд░ рд╣реЛрдиреЗ рдХрд╛ рдЗрдВрддрдЬрд╛рд░ рдХрд░рддрд╛ рд╣реИред
рдпрд╣рд╛рдВ, рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдореБрдЭреЗ рдЕрдкрдиреА рдЧрд▓рддреА рдХрд╛ рдПрд╣рд╕рд╛рд╕ рд╣реБрдЖ - рдореИрдВрдиреЗ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рдХрд┐ рдбреЗрдЯрд╛ 8 рдмрд┐рдЯ рдореЗрдВ рдЖрдЙрдЯрдкреБрдЯ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдирд┐рдпрдВрддреНрд░рдг рд░рдЬрд┐рд╕реНрдЯрд░ 8-рдмрд┐рдЯ рд╣реИрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЬреИрд╕рд╛ рдХрд┐ рдпрд╣ рдирд┐рдХрд▓рд╛, рдбреЗрдЯрд╛ 16 рдмрд┐рдЯ рдореЗрдВ рдЖрдЙрдЯрдкреБрдЯ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рдХреЗрд╡рд▓ 256 рдХрдо рдмрд╛рдЗрдЯреНрд╕ рдкреНрд░рд╛рдкреНрдд рд╣реБрдПред рдкреВрд░реА рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдпреЛрдЬрдирд╛ рдХреЛ рдереЛрдбрд╝рд╛ рдирдпрд╛ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рд╕рдВрдкреВрд░реНрдг GPIOD рдХреЛ рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рджреЗрдирд╛ рд╣реЛрдЧрд╛, рдФрд░ рдкрддрд╛ рдФрд░ рдПрдХреНрд╕реЗрд╕ рдореЛрдб рдХреЛ рдЕрдиреНрдп рдкрд┐рдиреЛрдВ рдореЗрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдЬреЛ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рдЙрдиреНрд╣реЗрдВ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рджреЗрд░реА рдХреЛ рдмрдврд╝рд╛рдПрдЧрд╛ред
рдЗрд╕рд▓рд┐рдП, рдлрд┐рд▓рд╣рд╛рд▓ рдореИрдВрдиреЗ рд░реЛрдХ рджрд┐рдпрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╢рд╛рдпрдж рдирд┐рдХрдЯ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдореИрдВ рдХрд╛рдо рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦреВрдВрдЧрд╛ рдФрд░ рдмрд╕ рдореЙрдирд┐рдЯрд░ рдкрд░ рдирд╣реАрдВ, рдмрд▓реНрдХрд┐ рдПрдХ рдЙрдкрдХрд░рдг рдХреЗ рд░реВрдк рдореЗрдВ рдмрд╕ рдореЗрдВ рдмреИрдардиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдВрдЧрд╛ред ISA рдмрд╕ рдореЗрдВ рдПрдХ рдЕрджреНрднреБрдд IOCHRDY рд╕рд┐рдЧреНрдирд▓ рд╣реЛрддрд╛ рд╣реИ, рдЬреЛ рдирд┐рд╖реНрдХреНрд░рд┐рдп рд╕реНрддрд░ рдХреЛ рд╕реЗрдЯ рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕ рдкрд░ рдбрд┐рд╡рд╛рдЗрд╕ IO рдЪрдХреНрд░ рдХреА рдЕрд╡рдзрд┐ рдХреЛ рдмрдврд╝рд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдореЗрд░реЗ рдкрд╛рд╕ рдкрд┐рдВрд╕ рдХреЛ рдЖрдЙрдЯрдкреБрдЯ рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдФрд░ рдЕрдкрдиреА рд╕реНрдерд┐рддрд┐ рдЬрд╛рд░реА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╕рдордп рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

рдпрд╣ рд╕рдм рдЕрднреА рдХреЗ рд▓рд┐рдП рд╣реИ, рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред

рдЕрдкрдбреЗрдЯ :
рдмрд╕ рдПрдХ рджрд┐рд▓рдЪрд╕реНрдк рдмрд╛рдд рдХрд╛ рдкрддрд╛ рдЪрд▓рд╛ред рдпрджрд┐ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдореЗрдВ рдЖрдкрдиреЗ O3 рдХреЗ рдмрдЬрд╛рдп рдСрдкреНрдЯрд┐рдорд╛рдЗрдЬрд╝реЗрд╢рди O1 рд╕реЗрдЯ рдХрд┐рдпрд╛ рд╣реИ, рддреЛ рдЗрдВрдЯрд░реИрдк рджрд░реНрдЬ рдХрд░рдиреЗ рдХрд╛ рд╕рдордп рдареАрдХ рд╡рд╣реА рд╣реИ рдЬреЛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдХреБрдЫ рд╢реЛрдз рдХреЗ рдмрд╛рдж, рдореБрдЭреЗ рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ рдЬрдм O2 рдпрд╛ O3 рдЕрдиреБрдХреВрд▓рди рдЪрд╛рд▓реВ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдХрдВрдкрд╛рдЗрд▓рд░ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЛ рдкреБрди: рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рдХреЗ рдХрд╛рд░рдг рдЗрдВрдЯрд░рдкреНрд░реЗрдирд░ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рдиреЗ рдХреЗ рддреБрд░рдВрдд рдмрд╛рдж рд╕рд┐рдЧреНрдирд▓ рдкрд┐рди 1 рдкрд░ рд╕реЗрдЯ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ, рдмрд▓реНрдХрд┐ рдХреЛрдб рдХреЗ рднрд╛рдЧ рдХреЗ рдмрд╛рдж рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдЬрдм рдПрдХ рдЖрд╕реНрдЯрд╕реАрд▓рд╕реНрдХрдк рдкрд░ рдУ 1 рдХрд╛ рдЕрдиреБрдХреВрд▓рди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдпрд╣ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд╕рд┐рд╕реНрдЯрдо рдиреЗ рдкрд╣рд▓реЗ рдмрд╛рдзрд╛ рдкреНрд░реЛрд╕реЗрд╕рд░ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд┐рдпрд╛ рдерд╛, рд▓реЗрдХрд┐рди рдЗрд╕ рдкреНрд░реЛрд╕реЗрд╕рд░ рдХрд╛ рдирд┐рд╖реНрдкрд╛рджрди рд╕рдордп рдУ 3 рдХреЗ рдорд╛рдорд▓реЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рд▓рдВрдмрд╛ рд╣реИред

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


All Articles