I2C ಬಸ್ - ನಿಯೋಜನೆ, ಸಾಧನ, ಡೇಟಾ ವರ್ಗಾವಣೆ, ವಿಳಾಸ
ಎಲೆಕ್ಟ್ರಾನಿಕ್ ಸರ್ಕ್ಯೂಟ್ ರಚಿಸುವಾಗ, ಅನೇಕ ಡೆವಲಪರ್ಗಳು ಅದರ ಪ್ರತ್ಯೇಕ ಬ್ಲಾಕ್ಗಳನ್ನು ಹೊಂದಿಸಲು, ಮಾದರಿ ಮಾಡಲು ಮತ್ತು ಪರಿಹರಿಸಲು ಹೆಚ್ಚಿನ ಸಂಖ್ಯೆಯ ಮಧ್ಯಂತರ ಚಿಪ್ಗಳನ್ನು ಬಳಸುವ ಅಗತ್ಯವನ್ನು ಎದುರಿಸುತ್ತಾರೆ. ಸಹಾಯಕ ಚಿಪ್ಗಳ ಸಂಖ್ಯೆಯನ್ನು ಕಡಿಮೆ ಮಾಡಲು, ಫಿಲಿಪ್ಸ್ 1980 ರ ದಶಕದಲ್ಲಿ ಎರಡು-ವೈರ್ ಬೈಡೈರೆಕ್ಷನಲ್ I2C ಸರಣಿ ನೆಟ್ವರ್ಕ್ ಇಂಟರ್ಫೇಸ್ ಅನ್ನು ಪ್ರಸ್ತಾಪಿಸಿತು, ಇದನ್ನು ಒಂದೇ ಸಾಧನದಲ್ಲಿ ಬಹು ಚಿಪ್ಗಳನ್ನು ನಿರ್ವಹಿಸಲು ವಿಶೇಷವಾಗಿ ವಿನ್ಯಾಸಗೊಳಿಸಲಾಗಿದೆ.
ಇಂದು, ಫಿಲಿಪ್ಸ್ ಮಾತ್ರ ವಿವಿಧ ಉದ್ದೇಶಗಳೊಂದಿಗೆ ಎಲೆಕ್ಟ್ರಾನಿಕ್ ಉಪಕರಣಗಳಿಗಾಗಿ ನೂರಕ್ಕೂ ಹೆಚ್ಚು I2C- ಹೊಂದಾಣಿಕೆಯ ಸಾಧನಗಳನ್ನು ಉತ್ಪಾದಿಸುತ್ತದೆ: ಮೆಮೊರಿ, ವೀಡಿಯೊ ಪ್ರೊಸೆಸರ್ ಸಿಸ್ಟಮ್ಗಳು, ಅನಲಾಗ್-ಟು-ಡಿಜಿಟಲ್ ಮತ್ತು ಡಿಜಿಟಲ್-ಟು-ಅನಲಾಗ್ ಪರಿವರ್ತಕಗಳು, ಡಿಸ್ಪ್ಲೇ ಡ್ರೈವರ್ಗಳು, ಇತ್ಯಾದಿ.
I2C ಬಸ್ 100 ರಿಂದ 400 kbps ದರದಲ್ಲಿ ಸಾಮಾನ್ಯ "ವೇಗದ" ಮೋಡ್ನಲ್ಲಿ ಸರಣಿ 8-ಬಿಟ್ ಡೇಟಾವನ್ನು ರವಾನಿಸುವ ಸಾಮರ್ಥ್ಯವನ್ನು ಹೊಂದಿರುವ ಸರಣಿ ಡೇಟಾ ವಿನಿಮಯ ಪ್ರೋಟೋಕಾಲ್ನ ಮಾರ್ಪಾಡು. ಡೇಟಾ ವಿನಿಮಯದ ಪ್ರಕ್ರಿಯೆಯನ್ನು ಇಲ್ಲಿ ಕೇವಲ ಎರಡು ತಂತಿಗಳಲ್ಲಿ ಅಳವಡಿಸಲಾಗಿದೆ (ಸಾಮಾನ್ಯ ತಂತಿಯನ್ನು ಲೆಕ್ಕಿಸುವುದಿಲ್ಲ): ಡೇಟಾಕ್ಕಾಗಿ SDA ಲೈನ್ ಮತ್ತು ಸಿಂಕ್ರೊನೈಸೇಶನ್ಗಾಗಿ SCL ಲೈನ್.
ಬಸ್ಗೆ ಸಂಪರ್ಕಗೊಂಡಿರುವ ಸಾಧನಗಳ ಔಟ್ಪುಟ್ಗಳ ಕ್ಯಾಸ್ಕೇಡ್ಗಳು ತೆರೆದ ಕಲೆಕ್ಟರ್ಗಳು ಅಥವಾ ಚಾನೆಲ್ಗಳನ್ನು ಹೊಂದಿರುವುದರಿಂದ, AND ವೈರಿಂಗ್ ಅನ್ನು ಪುನರಾವರ್ತಿಸುವುದರಿಂದ ಬಸ್ ದ್ವಿ-ದಿಕ್ಕಿನಂತಾಗುತ್ತದೆ. ಪರಿಣಾಮವಾಗಿ, ಬಸ್ ಚಿಪ್ಗಳ ನಡುವಿನ ಸಂಪರ್ಕಗಳ ಸಂಖ್ಯೆಯನ್ನು ಕಡಿಮೆ ಮಾಡುತ್ತದೆ, ಬೋರ್ಡ್ನಲ್ಲಿ ಅಗತ್ಯವಿರುವ ಕಡಿಮೆ ಪಿನ್ಗಳು ಮತ್ತು ಕುರುಹುಗಳನ್ನು ಬಿಡುತ್ತದೆ. ಪರಿಣಾಮವಾಗಿ, ಬೋರ್ಡ್ ಸ್ವತಃ ಸರಳ, ಹೆಚ್ಚು ಸಾಂದ್ರವಾಗಿರುತ್ತದೆ ಮತ್ತು ಉತ್ಪಾದನೆಯಲ್ಲಿ ತಾಂತ್ರಿಕವಾಗಿ ಹೆಚ್ಚು ಮುಂದುವರಿದಿದೆ.
ವಿಳಾಸ ಡಿಕೋಡರ್ಗಳು ಮತ್ತು ಇತರ ಬಾಹ್ಯ ಸಮಾಲೋಚನೆ ತರ್ಕವನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲು ಈ ಪ್ರೋಟೋಕಾಲ್ ನಿಮಗೆ ಅನುಮತಿಸುತ್ತದೆ. I2C ಬಸ್ನಲ್ಲಿ ಏಕಕಾಲದಲ್ಲಿ ಕಾರ್ಯನಿರ್ವಹಿಸಬಹುದಾದ ಚಿಪ್ಗಳ ಸಂಖ್ಯೆಯು ಅದರ ಸಾಮರ್ಥ್ಯದಿಂದ ಸೀಮಿತವಾಗಿದೆ - ಗರಿಷ್ಠ 400 pF.
I2C-ಹೊಂದಾಣಿಕೆಯ IC ಗಳು ಬಲವಾದ ಹಸ್ತಕ್ಷೇಪದ ಉಪಸ್ಥಿತಿಯಲ್ಲಿಯೂ ಸಹ ಡೇಟಾ ಸಮಗ್ರತೆಯನ್ನು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಲು ಹಾರ್ಡ್ವೇರ್ ಶಬ್ದ ನಿಗ್ರಹ ಅಲ್ಗಾರಿದಮ್ ಅನ್ನು ಹೊಂದಿವೆ. ಅಂತಹ ಸಾಧನಗಳು ಇಂಟರ್ಫೇಸ್ ಅನ್ನು ಹೊಂದಿದ್ದು, ಅವುಗಳ ಪೂರೈಕೆ ವೋಲ್ಟೇಜ್ಗಳು ವಿಭಿನ್ನವಾಗಿದ್ದರೂ ಸಹ ಮೈಕ್ರೋ ಸರ್ಕ್ಯೂಟ್ಗಳು ಪರಸ್ಪರ ಸಂವಹನ ನಡೆಸಲು ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ. ಕೆಳಗಿನ ಚಿತ್ರದಲ್ಲಿ, ಸಾಮಾನ್ಯ ಬಸ್ ಮೂಲಕ ಹಲವಾರು ಮೈಕ್ರೊ ಸರ್ಕ್ಯೂಟ್ಗಳನ್ನು ಸಂಪರ್ಕಿಸುವ ತತ್ವದೊಂದಿಗೆ ನೀವೇ ಪರಿಚಿತರಾಗಬಹುದು.
ಬಸ್ಗೆ ಸಂಪರ್ಕಗೊಂಡಿರುವ ಪ್ರತಿಯೊಂದು ಸಾಧನವು ತನ್ನದೇ ಆದ ವಿಶಿಷ್ಟ ವಿಳಾಸವನ್ನು ಹೊಂದಿದೆ, ಅದನ್ನು ನಿರ್ಧರಿಸಲಾಗುತ್ತದೆ ಮತ್ತು ಸಾಧನದ ಉದ್ದೇಶಕ್ಕೆ ಅನುಗುಣವಾಗಿ, ಇದು ರಿಸೀವರ್ ಅಥವಾ ಟ್ರಾನ್ಸ್ಮಿಟರ್ ಆಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ. ಡೇಟಾವನ್ನು ರವಾನಿಸುವಾಗ, ಈ ಸಾಧನಗಳು ಮಾಸ್ಟರ್ (ಮಾಸ್ಟರ್) ಅಥವಾ ಗುಲಾಮ (ಗುಲಾಮ) ಆಗಿರಬಹುದು. ಮಾಸ್ಟರ್ ಎನ್ನುವುದು ಡೇಟಾ ವರ್ಗಾವಣೆಯನ್ನು ಪ್ರಾರಂಭಿಸುವ ಸಾಧನವಾಗಿದೆ ಮತ್ತು SCL ಸಾಲಿನಲ್ಲಿ ಗಡಿಯಾರ ಸಂಕೇತಗಳನ್ನು ಉತ್ಪಾದಿಸುತ್ತದೆ. ಗುಲಾಮ, ಯಜಮಾನನಿಗೆ ಸಂಬಂಧಿಸಿದಂತೆ, ಗಮ್ಯಸ್ಥಾನ ಸಾಧನವಾಗಿದೆ.
I2C ಬಸ್ನಲ್ಲಿ ಕಾರ್ಯಾಚರಣೆಯ ಯಾವುದೇ ನಿರ್ದಿಷ್ಟ ಕ್ಷಣದಲ್ಲಿ, ಕೇವಲ ಒಂದು ಸಾಧನವು ಮಾಸ್ಟರ್ ಆಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ; ಇದು SCL ಸಾಲಿನಲ್ಲಿ ಸಂಕೇತವನ್ನು ಉತ್ಪಾದಿಸುತ್ತದೆ.ಮಾಸ್ಟರ್ ಒಬ್ಬ ಮಾಸ್ಟರ್ ರಿಸೀವರ್ ಅಥವಾ ಮಾಸ್ಟರ್ ಟ್ರಾನ್ಸ್ಮಿಟರ್ ಆಗಿರಬಹುದು.
ತಾತ್ವಿಕವಾಗಿ, ಬಸ್ ಹಲವಾರು ವಿಭಿನ್ನ ಮಾಸ್ಟರ್ಗಳನ್ನು ಅನುಮತಿಸುತ್ತದೆ, ಆದರೆ ನಿಯಂತ್ರಣ ಸಂಕೇತಗಳನ್ನು ರೂಪಿಸುವ ಮತ್ತು ಬಸ್ನ ಸ್ಥಿತಿಯನ್ನು ಮೇಲ್ವಿಚಾರಣೆ ಮಾಡುವ ಗುಣಲಕ್ಷಣಗಳ ಮೇಲೆ ನಿರ್ಬಂಧಗಳನ್ನು ಹೇರುತ್ತದೆ; ಇದರರ್ಥ ಹಲವಾರು ಮಾಸ್ಟರ್ಗಳು ಒಂದೇ ಸಮಯದಲ್ಲಿ ಪ್ರಸಾರವನ್ನು ಪ್ರಾರಂಭಿಸಬಹುದು, ಆದರೆ ಈ ರೀತಿಯ ಘರ್ಷಣೆಗಳನ್ನು ಮಧ್ಯಸ್ಥಿಕೆಗೆ ಧನ್ಯವಾದಗಳು ತೆಗೆದುಹಾಕಲಾಗುತ್ತದೆ, ಅಂದರೆ, ಬಸ್ ಅನ್ನು ಇನ್ನೊಬ್ಬ ಮಾಸ್ಟರ್ ಆಕ್ರಮಿಸಿಕೊಂಡಿದ್ದಾರೆ ಎಂದು ಪತ್ತೆ ಮಾಡಿದಾಗ ಮಾಸ್ಟರ್ ವರ್ತಿಸುವ ರೀತಿ.
ಒಂದು ಜೋಡಿ ಸಾಧನಗಳ ಸಿಂಕ್ರೊನೈಸೇಶನ್ ಎಲ್ಲಾ ಸಾಧನಗಳು ಬಸ್ಗೆ ಸಂಪರ್ಕಗೊಂಡಿವೆ ಎಂಬ ಅಂಶದಿಂದ "AND" ವೈರಿಂಗ್ ಅನ್ನು ರೂಪಿಸುತ್ತದೆ. ಆರಂಭದಲ್ಲಿ, SDA ಮತ್ತು SCL ಸಂಕೇತಗಳು ಹೆಚ್ಚು.
ಪ್ರಾರಂಭಿಸಿ ಮತ್ತು ನಿಲ್ಲಿಸಿ
ಮಾಸ್ಟರ್ «START» ಸ್ಥಿತಿಯನ್ನು ಉತ್ಪಾದಿಸುವುದರೊಂದಿಗೆ ವಿನಿಮಯವು ಪ್ರಾರಂಭವಾಗುತ್ತದೆ: SDA ಸಾಲಿನಲ್ಲಿ, ಸಿಗ್ನಲ್ ಎತ್ತರದಿಂದ ಕಡಿಮೆ ಸ್ಥಿತಿಗೆ ಹೋಗುತ್ತದೆ, ಆದರೆ SCL ಲೈನ್ ಸ್ಥಿರವಾದ ಉನ್ನತ ಮಟ್ಟವನ್ನು ಹೊಂದಿರುತ್ತದೆ. ಬಸ್ಗೆ ಸಂಪರ್ಕಗೊಂಡಿರುವ ಎಲ್ಲಾ ಸಾಧನಗಳು ಈ ಪರಿಸ್ಥಿತಿಯನ್ನು ವಿನಿಮಯವನ್ನು ಪ್ರಾರಂಭಿಸುವ ಆಜ್ಞೆಯಂತೆ ಗ್ರಹಿಸುತ್ತವೆ.
ಬಸ್ನಲ್ಲಿ ಡೇಟಾವನ್ನು ರವಾನಿಸುವಾಗ ಪ್ರತಿಯೊಬ್ಬ ಮಾಸ್ಟರ್ SCL ಸಾಲಿನಲ್ಲಿ ಪ್ರತ್ಯೇಕ ಗಡಿಯಾರ ಸಂಕೇತವನ್ನು ಉತ್ಪಾದಿಸುತ್ತಾನೆ.
ಮಾಸ್ಟರ್ನಿಂದ STOP ಸ್ಥಿತಿಯ ರಚನೆಯೊಂದಿಗೆ ವಿನಿಮಯವು ಕೊನೆಗೊಳ್ಳುತ್ತದೆ: SDA ಸಾಲಿನಲ್ಲಿ ಸಿಗ್ನಲ್ ಕಡಿಮೆಯಿಂದ ಹೆಚ್ಚಿನದಕ್ಕೆ ಬದಲಾಗುತ್ತದೆ, ಆದರೆ SCL ಲೈನ್ ಸ್ಥಿರವಾದ ಉನ್ನತ ಮಟ್ಟವನ್ನು ಹೊಂದಿರುತ್ತದೆ.
ಚಾಲಕ ಯಾವಾಗಲೂ START ಮತ್ತು STOP ಸಂಕೇತಗಳ ಮೂಲವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ. "START" ಸಿಗ್ನಲ್ ಅನ್ನು ಸರಿಪಡಿಸಿದ ತಕ್ಷಣ, ಲೈನ್ ಕಾರ್ಯನಿರತವಾಗಿದೆ ಎಂದರ್ಥ. STOP ಸಿಗ್ನಲ್ ಪತ್ತೆಯಾದಾಗ ಲೈನ್ ಉಚಿತವಾಗಿದೆ.
START ಸ್ಥಿತಿಯನ್ನು ಘೋಷಿಸಿದ ತಕ್ಷಣ, ಮಾಸ್ಟರ್ SCL ಲೈನ್ ಅನ್ನು ಕಡಿಮೆ ಬದಲಾಯಿಸುತ್ತದೆ ಮತ್ತು SDA ಲೈನ್ಗೆ ಮೊದಲ ಸಂದೇಶ ಬೈಟ್ನ ಅತ್ಯಂತ ಮಹತ್ವದ ಬಿಟ್ ಅನ್ನು ಕಳುಹಿಸುತ್ತದೆ. ಸಂದೇಶದಲ್ಲಿರುವ ಬೈಟ್ಗಳ ಸಂಖ್ಯೆ ಸೀಮಿತವಾಗಿಲ್ಲ.SCL ಲೈನ್ನಲ್ಲಿ ಸಿಗ್ನಲ್ ಮಟ್ಟ ಕಡಿಮೆ ಇದ್ದಾಗ ಮಾತ್ರ SDA ಲೈನ್ನಲ್ಲಿ ಬದಲಾವಣೆಗಳನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲಾಗುತ್ತದೆ. ಡೇಟಾ ಮಾನ್ಯವಾಗಿದೆ ಮತ್ತು ಸಿಂಕ್ ನಾಡಿ ಹೆಚ್ಚಾದಾಗ ಮಾತ್ರ ಬದಲಾಯಿಸಬಾರದು.
ಎಂಟನೇ ಡೇಟಾ ಬಿಟ್ ಅನ್ನು ಸ್ವೀಕರಿಸಿದ ನಂತರ SDA ಸಾಲಿನಲ್ಲಿ ವಿಶೇಷ ಸ್ವೀಕೃತಿ ಬಿಟ್ ಅನ್ನು ಹೊಂದಿಸುವ ಮೂಲಕ ಮಾಸ್ಟರ್ ಟ್ರಾನ್ಸ್ಮಿಟರ್ನಿಂದ ಬೈಟ್ ಅನ್ನು ಸ್ಲೇವ್ ರಿಸೀವರ್ ಸ್ವೀಕರಿಸಿದೆ ಎಂಬ ಸ್ವೀಕೃತಿಯನ್ನು ಮಾಡಲಾಗುತ್ತದೆ.
ದೃಢೀಕರಣ
ಆದ್ದರಿಂದ, ಟ್ರಾನ್ಸ್ಮಿಟರ್ನಿಂದ ರಿಸೀವರ್ಗೆ 8 ಬಿಟ್ಗಳ ಡೇಟಾವನ್ನು ಕಳುಹಿಸುವುದು SCL ಲೈನ್ನಲ್ಲಿ ಹೆಚ್ಚುವರಿ ಪಲ್ಸ್ನೊಂದಿಗೆ ಕೊನೆಗೊಳ್ಳುತ್ತದೆ ಸ್ವೀಕರಿಸುವ ಸಾಧನವು SDA ಲೈನ್ನಲ್ಲಿ ಕಡಿಮೆಯಾದಾಗ, ಅದು ಸಂಪೂರ್ಣ ಬೈಟ್ ಅನ್ನು ಸ್ವೀಕರಿಸಿದೆ ಎಂದು ಸೂಚಿಸುತ್ತದೆ.
ದೃಢೀಕರಣವು ಡೇಟಾ ವರ್ಗಾವಣೆ ಪ್ರಕ್ರಿಯೆಯ ಅವಿಭಾಜ್ಯ ಅಂಗವಾಗಿದೆ. ಮಾಸ್ಟರ್ ಸಿಂಕ್ ಪಲ್ಸ್ ಅನ್ನು ಉತ್ಪಾದಿಸುತ್ತದೆ. ಸ್ವೀಕೃತಿ ಗಡಿಯಾರವು ಸಕ್ರಿಯವಾಗಿರುವಾಗ ಟ್ರಾನ್ಸ್ಮಿಟರ್ ಕಡಿಮೆ ಸ್ಥಿತಿಯನ್ನು SDA ಗೆ ಕಳುಹಿಸುತ್ತದೆ. ಸಿಂಕ್ ನಾಡಿ ಹೆಚ್ಚಿರುವಾಗ, ರಿಸೀವರ್ SDA ಕಡಿಮೆ ಇರಬೇಕು.
ಗಮ್ಯಸ್ಥಾನದ ಗುಲಾಮ ತನ್ನ ವಿಳಾಸವನ್ನು ಅಂಗೀಕರಿಸದಿದ್ದರೆ, ಉದಾಹರಣೆಗೆ ಅದು ಪ್ರಸ್ತುತ ಕಾರ್ಯನಿರತವಾಗಿರುವ ಕಾರಣ, ಡೇಟಾ ಲೈನ್ ಅನ್ನು ಎತ್ತರದಲ್ಲಿ ಹಿಡಿದಿಟ್ಟುಕೊಳ್ಳಬೇಕು. ರವಾನೆಯನ್ನು ಸ್ಥಗಿತಗೊಳಿಸಲು ಮಾಸ್ಟರ್ ನಂತರ STOP ಸಂಕೇತವನ್ನು ನೀಡಬಹುದು.
ಸ್ವಾಗತವನ್ನು ಮಾಸ್ಟರ್ ರಿಸೀವರ್ ನಡೆಸಿದರೆ, ಪ್ರಸರಣ ಪೂರ್ಣಗೊಂಡ ನಂತರ ಸ್ಲೇವ್ ಟ್ರಾನ್ಸ್ಮಿಟರ್ಗೆ ತಿಳಿಸಲು ಅದು ನಿರ್ಬಂಧಿತವಾಗಿರುತ್ತದೆ - ಕೊನೆಯ ಬೈಟ್ ಅನ್ನು ದೃಢೀಕರಿಸುವ ಮೂಲಕ ಅಲ್ಲ. ಸ್ಲೇವ್ ಟ್ರಾನ್ಸ್ಮಿಟರ್ ಡೇಟಾ ಲೈನ್ ಅನ್ನು ಬಿಡುಗಡೆ ಮಾಡುತ್ತದೆ ಇದರಿಂದ ಮಾಸ್ಟರ್ ಸ್ಟಾಪ್ ಸಿಗ್ನಲ್ ಅಥವಾ ಪುನರಾವರ್ತಿತ START ಸಿಗ್ನಲ್ ಅನ್ನು ನೀಡಬಹುದು.
"AND" ತತ್ವದ ಪ್ರಕಾರ SCL ಲೈನ್ಗೆ ಸಂಪರ್ಕಗಳನ್ನು ಮಾಡಲಾಗಿದೆ ಎಂಬ ಅಂಶದಿಂದ ಸಾಧನಗಳ ಸಿಂಕ್ರೊನೈಸೇಶನ್ ಅನ್ನು ಖಾತ್ರಿಪಡಿಸಲಾಗಿದೆ.
SCL ರೇಖೆಯ ಪರಿವರ್ತನೆಯನ್ನು ಕಡಿಮೆಯಿಂದ ಹೆಚ್ಚಿನದಕ್ಕೆ ನಿಯಂತ್ರಿಸುವ ಏಕೈಕ ಹಕ್ಕನ್ನು ಮಾಸ್ಟರ್ ಹೊಂದಿಲ್ಲ.ಸ್ವೀಕರಿಸಿದ ಬಿಟ್ ಅನ್ನು ಪ್ರಕ್ರಿಯೆಗೊಳಿಸಲು ಸ್ಲೇವ್ಗೆ ಹೆಚ್ಚಿನ ಸಮಯ ಬೇಕಾದರೆ, ಅದು ಮುಂದಿನ ಬಿಟ್ ಡೇಟಾವನ್ನು ಸ್ವೀಕರಿಸಲು ಸಿದ್ಧವಾಗುವವರೆಗೆ ಅದು ಸ್ವತಂತ್ರವಾಗಿ SCL ಅನ್ನು ಕಡಿಮೆ ಹಿಡಿದಿಟ್ಟುಕೊಳ್ಳುತ್ತದೆ. ಅಂತಹ ಪರಿಸ್ಥಿತಿಯಲ್ಲಿ SCL ಲೈನ್ ದೀರ್ಘವಾದ ಕಡಿಮೆ ಮಟ್ಟದ ಸಿಂಕ್ ಪಲ್ಸ್ ಅವಧಿಯವರೆಗೆ ಕಡಿಮೆ ಇರುತ್ತದೆ.
ಕಡಿಮೆ ನಿರಂತರ ಕಡಿಮೆ ಇರುವ ಸಾಧನಗಳು ದೀರ್ಘ ಅವಧಿ ಮುಗಿಯುವವರೆಗೆ ನಿಷ್ಕ್ರಿಯವಾಗಿರುತ್ತವೆ. ಎಲ್ಲಾ ಸಾಧನಗಳು ಕಡಿಮೆ ಸಿಂಕ್ ಅವಧಿಯನ್ನು ಪೂರ್ಣಗೊಳಿಸಿದಾಗ, SCL ಹೆಚ್ಚು ಹೋಗುತ್ತದೆ.
ಎಲ್ಲಾ ಸಾಧನಗಳು ಹೆಚ್ಚಿನ ಗಡಿಯಾರವನ್ನು ಪ್ರಾರಂಭಿಸುತ್ತವೆ ಮತ್ತು ಅದರ ಅವಧಿಯನ್ನು ಪೂರ್ಣಗೊಳಿಸುವ ಮೊದಲ ಸಾಧನವು SCL ಲೈನ್ ಅನ್ನು ಕಡಿಮೆ ಮಾಡಲು ಮೊದಲನೆಯದು. ಪರಿಣಾಮವಾಗಿ, ಎಸ್ಸಿಎಲ್ನ ಕಡಿಮೆ ಸ್ಥಿತಿಯ ಅವಧಿಯನ್ನು ಸಾಧನಗಳಲ್ಲಿ ಒಂದರ ಸಿಂಕ್ರೊನೈಸೇಶನ್ ಪಲ್ಸ್ನ ದೀರ್ಘವಾದ ಕಡಿಮೆ ಸ್ಥಿತಿಯಿಂದ ನಿರ್ಧರಿಸಲಾಗುತ್ತದೆ ಮತ್ತು ಹೆಚ್ಚಿನ ಸ್ಥಿತಿಯ ಅವಧಿಯನ್ನು ಕಡಿಮೆ ಅವಧಿಯ ಸಿಂಕ್ರೊನೈಸೇಶನ್ನಿಂದ ನಿರ್ಧರಿಸಲಾಗುತ್ತದೆ. ಸಾಧನಗಳು.
ಬಿಟ್ ಮತ್ತು ಬೈಟ್ ಮಟ್ಟದಲ್ಲಿ ಡೇಟಾ ಪ್ರಸರಣವನ್ನು ನಿಯಂತ್ರಿಸುವ ಸಾಧನವಾಗಿ ರಿಸೀವರ್ಗಳಿಂದ ಸಿಂಕ್ರೊನೈಸೇಶನ್ ಸಿಗ್ನಲ್ಗಳನ್ನು ಬಳಸಬಹುದು.
ಸಾಧನವು ಹೆಚ್ಚಿನ ದರದಲ್ಲಿ ಬೈಟ್ಗಳನ್ನು ಸ್ವೀಕರಿಸುವ ಸಾಮರ್ಥ್ಯವನ್ನು ಹೊಂದಿದ್ದರೆ, ಆದರೆ ಸ್ವೀಕರಿಸಿದ ಬೈಟ್ ಅನ್ನು ಶೇಖರಿಸಿಡಲು ಅಥವಾ ಮುಂದಿನ ಬೈಟ್ ಅನ್ನು ಸ್ವೀಕರಿಸಲು ತಯಾರಾಗಲು ಇದು ಒಂದು ನಿರ್ದಿಷ್ಟ ಸಮಯವನ್ನು ತೆಗೆದುಕೊಂಡರೆ, ಬೈಟ್ ಅನ್ನು ಸ್ವೀಕರಿಸಿ ಮತ್ತು ಅಂಗೀಕರಿಸಿದ ನಂತರ ಅದು SCL ಅನ್ನು ಹಿಡಿದಿಟ್ಟುಕೊಳ್ಳುವುದನ್ನು ಮುಂದುವರಿಸಬಹುದು, ಸ್ಟ್ಯಾಂಡ್ಬೈ ಸ್ಥಿತಿಗೆ ಟ್ರಾನ್ಸ್ಮಿಟರ್.
ಅಂತರ್ನಿರ್ಮಿತ ಹಾರ್ಡ್ವೇರ್ ಸರ್ಕ್ಯೂಟ್ಗಳಿಲ್ಲದ ಮೈಕ್ರೊಕಂಟ್ರೋಲರ್, ಉದಾಹರಣೆಗೆ ಬಿಟ್ ಮಟ್ಟದಲ್ಲಿ, ಅವುಗಳ ಕಡಿಮೆ ಸ್ಥಿತಿಯ ಅವಧಿಯನ್ನು ಹೆಚ್ಚಿಸುವ ಮೂಲಕ ಗಡಿಯಾರದ ವೇಗವನ್ನು ನಿಧಾನಗೊಳಿಸಬಹುದು. ಪರಿಣಾಮವಾಗಿ, ಮಾಸ್ಟರ್ ಸಾಧನದ ಬಾಡ್ ದರವನ್ನು ವೇಗದಿಂದ ನಿರ್ಧರಿಸಲಾಗುತ್ತದೆ ನಿಧಾನವಾದ ಸಾಧನ.
ವಿಳಾಸ
I2C ಬಸ್ಗೆ ಸಂಪರ್ಕಗೊಂಡಿರುವ ಪ್ರತಿಯೊಂದು ಸಾಧನವು ವಿಶಿಷ್ಟವಾದ ಪ್ರೋಗ್ರಾಂ ವಿಳಾಸವನ್ನು ಹೊಂದಿದೆ, ಅದರಲ್ಲಿ ಮಾಸ್ಟರ್ ನಿರ್ದಿಷ್ಟ ಆಜ್ಞೆಯನ್ನು ಕಳುಹಿಸುವ ಮೂಲಕ ಅದನ್ನು ಸಂಬೋಧಿಸುತ್ತಾರೆ. ಅದೇ ಪ್ರಕಾರದ ಮೈಕ್ರೊ ಸರ್ಕ್ಯೂಟ್ಗಳನ್ನು ವಿಳಾಸ ಸೆಲೆಕ್ಟರ್ನಿಂದ ನಿರೂಪಿಸಲಾಗಿದೆ, ಸೆಲೆಕ್ಟರ್ನ ಡಿಜಿಟಲ್ ಇನ್ಪುಟ್ಗಳ ರೂಪದಲ್ಲಿ ಅಥವಾ ಅನಲಾಗ್ ರೂಪದಲ್ಲಿ ಕಾರ್ಯಗತಗೊಳಿಸಲಾಗುತ್ತದೆ. ವಿಳಾಸಗಳನ್ನು ಬಸ್ಗೆ ಸಂಪರ್ಕಗೊಂಡಿರುವ ಸಾಧನಗಳ ವಿಳಾಸ ಜಾಗಕ್ಕೆ ವಿಂಗಡಿಸಲಾಗಿದೆ.
ಸಾಮಾನ್ಯ ಮೋಡ್ ಏಳು-ಬಿಟ್ ವಿಳಾಸವನ್ನು ಊಹಿಸುತ್ತದೆ. ವಿಳಾಸವು ಈ ಕೆಳಗಿನಂತೆ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ: «START» ಆಜ್ಞೆಯ ನಂತರ, ಮಾಸ್ಟರ್ ಮೊದಲ ಬೈಟ್ ಅನ್ನು ಕಳುಹಿಸುತ್ತಾನೆ, ಇದು ಮಾಸ್ಟರ್ನೊಂದಿಗೆ ಸಂವಹನ ನಡೆಸಲು ಯಾವ ಗುಲಾಮರ ಸಾಧನದ ಅಗತ್ಯವಿದೆ ಎಂಬುದನ್ನು ನಿರ್ಧರಿಸುತ್ತದೆ. ಬಸ್ನಲ್ಲಿರುವ ಎಲ್ಲಾ ಸಾಧನಗಳನ್ನು ವ್ಯಾಖ್ಯಾನಿಸುವ ಸಾಮಾನ್ಯ ಕರೆ ವಿಳಾಸವೂ ಇದೆ, ಎಲ್ಲಾ ಸಾಧನಗಳು (ಸೈದ್ಧಾಂತಿಕವಾಗಿ) ಅದಕ್ಕೆ ಸ್ವೀಕೃತಿಯೊಂದಿಗೆ ಪ್ರತಿಕ್ರಿಯಿಸುತ್ತವೆ, ಆದರೆ ಪ್ರಾಯೋಗಿಕವಾಗಿ ಇದು ಅಪರೂಪ.
ಆದ್ದರಿಂದ ಮೊದಲ ಬೈಟ್ನ ಮೊದಲ ಏಳು ಬಿಟ್ಗಳು ಸ್ಲೇವ್ ವಿಳಾಸವಾಗಿದೆ. ಕನಿಷ್ಠ ಮಹತ್ವದ ಬಿಟ್, ಎಂಟನೆಯದು, ಡೇಟಾವನ್ನು ಕಳುಹಿಸುವ ದಿಕ್ಕನ್ನು ಸೂಚಿಸುತ್ತದೆ. "0" ಇದ್ದರೆ, ನಂತರ ಮಾಹಿತಿಯನ್ನು ಮಾಸ್ಟರ್ನಿಂದ ಈ ಗುಲಾಮನಿಗೆ ಬರೆಯಲಾಗುತ್ತದೆ. «1» ವೇಳೆ, ಮಾಹಿತಿಯನ್ನು ಈ ಗುಲಾಮರಿಂದ ಮಾಸ್ಟರ್ ಓದಲಾಗುತ್ತದೆ.
ಮಾಸ್ಟರ್ ವಿಳಾಸ ಬೈಟ್ ಕಳುಹಿಸುವುದನ್ನು ಮುಗಿಸಿದ ನಂತರ, ಪ್ರತಿಯೊಬ್ಬ ಗುಲಾಮನು ಅದರ ವಿಳಾಸವನ್ನು ಅದಕ್ಕೆ ಹೋಲಿಸುತ್ತಾನೆ. ಅದೇ ವಿಳಾಸವನ್ನು ಹೊಂದಿರುವ ಯಾರಾದರೂ ಗುಲಾಮರಾಗಿದ್ದಾರೆ ಮತ್ತು ವಿಳಾಸ ಬೈಟ್ನ ಕನಿಷ್ಠ ಮಹತ್ವದ ಬಿಟ್ನ ಮೌಲ್ಯವನ್ನು ಅವಲಂಬಿಸಿ ಸ್ಲೇವ್ ಟ್ರಾನ್ಸ್ಮಿಟರ್ ಅಥವಾ ಸ್ಲೇವ್ ರಿಸೀವರ್ ಎಂದು ವ್ಯಾಖ್ಯಾನಿಸಲಾಗುತ್ತದೆ.
ಸ್ಲೇವ್ ವಿಳಾಸವು ಸ್ಥಿರ ಮತ್ತು ಪ್ರೋಗ್ರಾಮೆಬಲ್ ಭಾಗಗಳನ್ನು ಒಳಗೊಂಡಿರಬಹುದು. ಒಂದು ವ್ಯವಸ್ಥೆಯಲ್ಲಿ ಒಂದೇ ರೀತಿಯ ಹೆಚ್ಚಿನ ಸಂಖ್ಯೆಯ ಸಾಧನಗಳು ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತವೆ, ನಂತರ ವಿಳಾಸದ ಪ್ರೊಗ್ರಾಮೆಬಲ್ ಭಾಗವು ಬಸ್ನಲ್ಲಿ ಗರಿಷ್ಠ ಒಂದೇ ರೀತಿಯ ಸಾಧನಗಳನ್ನು ಬಳಸಲು ಅನುಮತಿಸುತ್ತದೆ. ವಿಳಾಸ ಬೈಟ್ನಲ್ಲಿ ಎಷ್ಟು ಬಿಟ್ಗಳು ಪ್ರೋಗ್ರಾಮೆಬಲ್ ಆಗಿವೆ ಎಂಬುದು ಚಿಪ್ನಲ್ಲಿರುವ ಉಚಿತ ಪಿನ್ಗಳ ಸಂಖ್ಯೆಯನ್ನು ಅವಲಂಬಿಸಿರುತ್ತದೆ.
ಕೆಲವೊಮ್ಮೆ ಪ್ರೊಗ್ರಾಮೆಬಲ್ ವಿಳಾಸ ಶ್ರೇಣಿಯ ಅನಲಾಗ್ ಸೆಟ್ಟಿಂಗ್ನೊಂದಿಗೆ ಪಿನ್ ಸಾಕಾಗುತ್ತದೆ, ಉದಾಹರಣೆಗೆ SAA1064 - ನಿಖರವಾಗಿ ಅಂತಹ ಅನುಷ್ಠಾನವನ್ನು ಹೊಂದಿರುವ ಎಲ್ಇಡಿ ಸೂಚಕ ಚಾಲಕ. ನಿರ್ದಿಷ್ಟ ಪಿನ್ನ ಸಂಭಾವ್ಯತೆಯು ಚಿಪ್ನ ವಿಳಾಸದ ಸ್ಥಳದ ಆಫ್ಸೆಟ್ ಅನ್ನು ನಿರ್ಧರಿಸುತ್ತದೆ ಆದ್ದರಿಂದ ಒಂದೇ ರೀತಿಯ ಚಿಪ್ಗಳು ಒಂದೇ ಬಸ್ನಲ್ಲಿ ಕಾರ್ಯನಿರ್ವಹಿಸುವುದನ್ನು ಸಂಘರ್ಷಿಸುವುದಿಲ್ಲ. I2C ಬಸ್ ಅನ್ನು ಬೆಂಬಲಿಸುವ ಎಲ್ಲಾ ಚಿಪ್ಗಳು ತಯಾರಕರು ದಾಖಲಾತಿಯಲ್ಲಿ ನಿರ್ದಿಷ್ಟಪಡಿಸುವ ವಿಳಾಸಗಳ ಗುಂಪನ್ನು ಹೊಂದಿರುತ್ತವೆ.
"11110XX" ಸಂಯೋಜನೆಯನ್ನು 10-ಬಿಟ್ ವಿಳಾಸಕ್ಕಾಗಿ ಕಾಯ್ದಿರಿಸಲಾಗಿದೆ. "START" ಆಜ್ಞೆಯಿಂದ "STOP" ಆಜ್ಞೆಗೆ ಡೇಟಾ ವಿನಿಮಯವನ್ನು ನಾವು ಊಹಿಸಿದರೆ, ಅದು ಈ ರೀತಿ ಕಾಣುತ್ತದೆ:
ಸರಳ ಮತ್ತು ಸಂಯೋಜಿತ ಡೇಟಾ ವಿನಿಮಯ ಸ್ವರೂಪಗಳನ್ನು ಇಲ್ಲಿ ಅನುಮತಿಸಲಾಗಿದೆ. ಸಂಯೋಜಿತ ಸ್ವರೂಪ ಎಂದರೆ "START" ಮತ್ತು "STOP" ನಡುವೆ ಮಾಸ್ಟರ್ ಮತ್ತು ಸ್ಲೇವ್ ರಿಸೀವರ್ಗಳು ಮತ್ತು ಟ್ರಾನ್ಸ್ಮಿಟರ್ಗಳಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸಬಹುದು, ಉದಾಹರಣೆಗೆ ಸರಣಿ ಮೆಮೊರಿ ನಿರ್ವಹಣೆಯಲ್ಲಿ ಇದು ಉಪಯುಕ್ತವಾಗಿದೆ.
ಡೇಟಾದ ಮೊದಲ ಬೈಟ್ ಮೆಮೊರಿ ವಿಳಾಸವನ್ನು ವರ್ಗಾಯಿಸಲಿ. ನಂತರ, «START» ಆಜ್ಞೆಯನ್ನು ಪುನರಾವರ್ತಿಸಿ ಮತ್ತು ಸ್ಲೇವ್ ವಿಳಾಸವನ್ನು ಓದುವುದು, ಮೆಮೊರಿ ಡೇಟಾ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ. ಈ ಹಿಂದೆ ಪ್ರವೇಶಿಸಿದ ವಿಳಾಸವನ್ನು ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಹೆಚ್ಚಿಸುವ ಅಥವಾ ಕಡಿಮೆ ಮಾಡುವ ನಿರ್ಧಾರಗಳನ್ನು ಸಾಧನ ಡೆವಲಪರ್ ಈ ಹಿಂದೆ ಚಿಪ್ ದಸ್ತಾವೇಜನ್ನು ಅಧ್ಯಯನ ಮಾಡಿದ ನಂತರ ತೆಗೆದುಕೊಳ್ಳುತ್ತಾರೆ. ಒಂದು ರೀತಿಯಲ್ಲಿ ಅಥವಾ ಇನ್ನೊಂದು, START ಆಜ್ಞೆಯನ್ನು ಸ್ವೀಕರಿಸಿದ ನಂತರ, ಎಲ್ಲಾ ಸಾಧನಗಳು ತಮ್ಮ ತರ್ಕವನ್ನು ಮರುಸ್ಥಾಪಿಸಬೇಕು ಮತ್ತು ವಿಳಾಸವನ್ನು ಈಗ ಹೆಸರಿಸಲಾಗುವುದು ಎಂಬ ಅಂಶವನ್ನು ಸಿದ್ಧಪಡಿಸಬೇಕು.