Мазмуну:

Дүйнөнүн эң арзан I2C (I-Squared-C) адаптери: 5 кадам (сүрөттөр менен)
Дүйнөнүн эң арзан I2C (I-Squared-C) адаптери: 5 кадам (сүрөттөр менен)

Video: Дүйнөнүн эң арзан I2C (I-Squared-C) адаптери: 5 кадам (сүрөттөр менен)

Video: Дүйнөнүн эң арзан I2C (I-Squared-C) адаптери: 5 кадам (сүрөттөр менен)
Video: Дүйнөдөгү эң таң калычтуу нике түрлөрү / жүрөгү боштор көрбөсүн 2024, Июль
Anonim
Дүйнөдөгү эң арзан I2C (I-Squared-C) адаптери
Дүйнөдөгү эң арзан I2C (I-Squared-C) адаптери

Компьютериңизге сенсордук интерфейс жасаңыз! Жаңыртуу 6/9/08: Бир нече жолдорду изилдеп чыккандан кийин, бул ыкманы Microsoft Windowsто ишке ашыруунун практикалык жолу жок деген жыйынтыкка келдим. Бул кичинекей ОС баштоо эмес, мен чындыгында жаңгакты сынап көрдүм! Кечиресиз! Windows колдонуучулары I2C мүмкүнчүлүктөрүнө муктаж болгон учурдагы USB негизиндеги чечимдер менен эң жакшы тейленет. 24/05/08 жаңыртуу: Linux колдоосу, ошондой эле Nintendo Wii Nunchuk контроллери жана BlinkM "акылдуу LED" үлгүсүнүн коду кошулду. Linux. I2C (Inter-Integrated Circuit үчүн кыска) боюнча компиляциялоо жана орнотуу боюнча көрсөтмөлөр үчүн булак коду менен камтылган README.txt файлын караңыз, адатта компьютерлерде ички компоненттердин ортосундагы төмөн деңгээлдеги байланыш үчүн колдонулган эки зымдуу сериялык автобус. I2C робот техникасында дагы популярдуу. Бардык типтеги сенсорлор жана аткаргычтар I2Cге шайкеш келген формада бар: УЗИ диапазондору, ылдамдатуу, ийилүү, температура жана басым үчүн сенсорлор, серво контроллерлери жана кошумча жалпы максаттуу (GPIO) линияларды камсыз кылган автобус кеңейтүүчүлөр., Microchip PIC ж. Ноутбуктар жана бир такталуу компьютерлер барган сайын кичирейип, жеткиликтүү боло баштаганда, бул системалар түздөн-түз робототехника жана электроника долбоорлорунда колдонулганын көрүү барган сайын кеңири таралган. Бул көрүнүштү иштетүү жана татаал AI сыяктуу жаңы мүмкүнчүлүктөргө жетиштүү күч берет жана ал жеткиликтүү өнүктүрүү инструменттеринин жана тилдердин чөйрөсүн абдан кеңейтет … бирок бул дагы жаңы көйгөйдү жаратат: бул "кадимки" тутумдарды перифериялык түзүлүшкө туташтыруу адатта негизги агым аркылуу жүргүзүлөт. USB сыяктуу керектөөчү класстар; Сыртта жеткиликтүү "I2C порту" жок, биз сенсорлорубузду колдонуу үчүн жөн эле кире алабыз … же барбы?

1 -кадам: Учурдагы тандоолор

Учурдагы параметрлер
Учурдагы параметрлер
Учурдагы параметрлер
Учурдагы параметрлер

I2C түзмөктөрүн жөнөкөй столго же ноутбукка туташтыруунун бир жолу-USB-I2C адаптери аркылуу. Ачык программалык камсыздоону өзүңүз жасай турган комплекттерден тартып, ар бир коңгуроо жана ышкырык менен татаал коммерциялык бөлүмдөргө чейин, жок дегенде, онго жакын ушундай варианттар бар.

USB-to-I2C ыкмасынын бир кемчилиги-бул баа. Толук өзгөчөлөнгөн коммерциялык моделдин баасы 250 доллар же андан ашык болушу мүмкүн. Ал тургай, "бекер" үй бышыруу альтернативалары бөлүктөрдүн топтомун жана микроконтроллер программистине жана аны колдонуу үчүн тиешелүү билимге ээ болууну болжолдойт. Дагы бир жетишпеген жагы - популярдуу Windows бүктөмүнүн сыртында айдоочуларды колдоонун салыштырмалуу жетишсиздиги. Бул түзмөктөрдүн айрымдары түпнускада Macintosh же Linux компьютерлеринде иштейт.

2 -кадам: DDC I2C

DDC I2C болуп саналат
DDC I2C болуп саналат
DDC I2C болуп саналат
DDC I2C болуп саналат
DDC I2C болуп саналат
DDC I2C болуп саналат

Мен кириш сөздө көпчүлүк компьютерлерде тышкы I2C порту жок экенин айтканымда, мен калп айттым. Көрсө, бар экен, жана ал жерде дээрлик он жыл бою, көбүнчө уктап жатыптыр.

Көпчүлүк заманбап графикалык карталар жана мониторлор дисплей маалымат каналы (DDC) деп аталган нерсени колдошот, бул видео кабелдин ичиндеги байланыш шилтемеси, бул компьютер менен дисплейге бири -бирине шайкеш келген чечимдерди сүйлөшүүгө жана монитордун функцияларын программалык камсыздоону көзөмөлдөөгө уруксат берет. көрсөтүү. DDC, чынында, бир нече белгиленген эрежелер менен I2C автобустун ишке ашышы. Компьютер менен монитордун ортосундагы байланышты (же ноутбуктун тышкы мониторунун туташуусу сыяктуу DDC линияларын колдонбостон) колдонуу менен, кээ бир I2C түзмөктөрү менен эч кандай чыгым болбостон интерфейске кире аласыз. толугу менен адаптер түзмөккө кадимки муктаждык. Бул I2C автобусуна физикалык түрдө кирүү үчүн бизге керек болгон нерсе-бул бузулган видео кабель …

3 -кадам: Кабелди ажыратуу

Кабелди ажыратуу
Кабелди ажыратуу
Кабелди ажыратуу
Кабелди ажыратуу

Биздин I2C интерфейси үчүн төрт зым керек: +5V кубаты, жер, сериялык маалыматтар жана сериялык саат. Видео порттордун ар кандай түрлөрү үчүн Pinouts Wikipedia же Pinouts.ru сайтынан табууга болот. Эске алыңыз, эгерде VGA кабелин колдонуп, төөнөгүчтөрдү толуктап алыңыз; кабелдин сыртынан жылуулоо жана коргоону кайра кесип, сиз, сыягы, ичинде зымдардын эки тобун таба аласыз. Калыңыраак зымдар же кошумча коргоого оролгон зымдардын түйүндөрү адатта видео сигналды алып жүрөт. Биз буларга кызыкдар эмеспиз жана алар кайра калыбына келтирилиши мүмкүн. Жука, корголбогон зымдар, адатта, DDC (I2C) сигналдарын башкалардын арасында алып жүрөт. Мультиметр же үзгүлтүксүздүк сынагычы кабелиңизге туура төрт зым табууга жардам берет. Жылаңач туташтыргычты колдонуу бул жерде пайдалуу болушу мүмкүн, анткени сиз 4 зымды +5V кубаттуулугуна туташтырышыңыз керек: жеткиликтүү ток өтө чектелген; DDC спецификациясына ылайык болжол менен 50 мА. Көпчүлүк I2C түзмөктөрү кичине эле токту жутат, андыктан бир эле учурда бир нече иштетүү мүмкүн болушу керек … бирок эгерде бир же экиден ашык LEDди (же башка салыштырмалуу жогорку агымдагы түзмөктөрдү) колдонсоңуз, тышкы энергия менен камсыз болушу керек.

4 -кадам: Толтурулган адаптер

Толтурулган адаптер
Толтурулган адаптер

Мына даяр адаптер. Мунун баары бар! Мен ноутбук сумкама оңой сиңип кетиши үчүн мен өзүмдү кошумча стуби кылдым жана мендеги I2C серво контроллерине түз туташкан төрт пиндик сайгычты коштум.

5 -кадам: Программалык камсыздоо жана долбоорлор

Программалык камсыздоо жана долбоорлор
Программалык камсыздоо жана долбоорлор
Программалык камсыздоо жана долбоорлор
Программалык камсыздоо жана долбоорлор

Mac OS X жана Linux адаптер менен иштөө үчүн баштапкы кодду менин веб -сайтымдан көчүрүп алсаңыз болот (жүктөө шилтемеси беттин ылдыйында). Бул C тилинде жазылган, жана сизде gcc орнотулган болушу керек (Linux адатта муну демейки боюнча камтыйт, ал эми Mac колдонуучулары баштапкы OS дискиңизге кошумча орнотуучу же Appleден бекер жүктөлүүчү иштеп чыгуучу куралдарды орнотушу керек). Мисал коду температура сенсорун окуу, BlinkM "акылдуу LEDди" күйгүзүү, сериялык EEPROM жазуу жана текшерүү, Nintento Wii Nunchuk контроллерин окуу (Linux үчүн гана) жана servo контроллер тактасы менен байланышуу үчүн киргизилген. Тилекке каршы, бул адаптер схемасы эмес. бардык системалар менен шайкеш. DDCди колдоо милдеттүү эмес, андыктан бардык видео карталар бул мүмкүнчүлүктү колдобойт. Азырынча ATI же Intel графикалык чиптери бар Mac системалары менен ийгиликке жеттим, бирок NVIDIAга негизделген системалар ийгиликсиз. Linux жагында мен IBM ThinkPad A31p (ATI графикасы) программасын ийгиликтүү сынап көрдүм, бирок бул Asus EeePC (Intel) менен иштебейт. Компьютер айлана -чөйрөнүн температурасын I2C температура сенсорунан үзгүлтүксүз окуйт, мезгил -мезгили менен бул маалыматты I2C сериялык EEPROM чипине каттайт (ооба, бул жөн эле файлга басып чыгарылышы мүмкүн, бирок бул I2C тиркемелерин андан ары көрсөтүү үчүн керек болчу), анан серво (аркылуу I2C контроллери) индикатордук тергич катары кызмат кылат. Китепкана жана бул түзмөктөр үчүн үлгү коду мурунтан эле бар болгондуктан, бул демону чогултуу үчүн бир нече мүнөт талап кылынган (жана мунун көбү индикатор тергичинде болгон).

Сунушталууда: