Мазмуну:
- 1 -кадам: Программалык камсыздоо
- 2 -кадам: Аппараттык
- 3 -кадам: Түзмөктү сыноо
- 4 -кадам: Тиркеме: ATtiny85
Video: Arduino 1-зым Generic Client/Slave Device (Sensor): 4 Steps
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:36
Сураныч, Киришүүнү жана 2-кадамды окуп, кырдаал жана жеткиликтүү китепканалар жөнүндө көбүрөөк маалымат алуу үчүн Arduino 1 зымдуу дисплейди (144 символ) кантип куруу керектигин окуп чыгыңыз. Бул жерде түшүндүрүлгөндөй, биз Arduino аркылуу жалпы 1 зымдуу түзмөктөрдү (мис. Сенсорлорду) куруу үчүн OneWire-Hub китепканасын (OneWire кулдук түзүлүш эмулятору) orgua аркылуу колдонобуз (тегерегинде башка айрылар бар).
1 -кадам: Программалык камсыздоо
Эң негизгиси, негизинен ар кандай баалуулукту жөнөкөй жол менен кайтара ала турган түзмөк жасоо. Демек, стандарттык программалык камсыздоо бардык баалуулуктарды түз окуу үчүн колдонулушу мүмкүн (эч кандай сүйлөшүү же экилик манипуляциянын кереги жок). Ал үчүн бизге калкып келе турган жана кеңири колдоого алынган өтө жөнөкөй 1 зымдуу түзмөк керек. Мен билген жалгыз чечим DS18B20 термометри (DS2438 Батарея Монитору кызыктуу жана пайдалуу, бирок өтө татаал жана башка кемчиликтер арасында жай). OneWire-Hub китепканасында DS18B20_asInterface деп аталган мисал камтылган, ал бизге керектүү нерселерди кылат. Бул DS18B20 тутумун түзөт, алардын ар бири сенсорубуздан кайткысы келген бир өзгөрмөлүү маанини билдирет. Бул жердеги чектөөлөр - бул токтом жана баалуулуктар -55, 0… 125, 0 диапазонунда болушу керек. Буга оңой эле жетүүгө болот - эң начар учурда кайра масштабдаштырууга болот - жана мис. DS2438 баалуулуктары (1,5тан 10В чейин). Же болбосо, чоңураак маанилер диапазонун колдонуу менен белгилениши мүмкүн:
setTemperatureRaw (static_cast (маани * 16.0f));
бирок бул баалуулуктарды окуу жана иштетүү бардык программалык камсыздоолор тарабынан колдоого алынбашы мүмкүн, анткени ал спецификациядан тышкары.
Сиз билишиңиз керек, адегенде кулдардын максималдуу саны 8 менен чектелген, бирок "OneWireHub_config.h" дан HUB_SLAVE_LIMITти 32ге чейин көбөйтүү менен өзгөртүүгө болот. 1 зымдуу тармак (мис. X10), Arduino 1 зымдуу дисплейинин 2-кадамында түшүндүрүлгөндөй (144 символ). Ал эми IDE версиясын колдонуу> = 1.8.3 кодду түзүү жана Arduinoго жүктөө үчүн.
Бул жерде мен жакында эле түзгөн түзмөктүн коду. Мен сенсорлордун комбинациясын колдонбойт деп ойлойм, мен бул жерде кененирээк маалымат бербейм, кодду текшериңиз жана жардам керек болсо суроолорду бериңиз.
2 -кадам: Аппараттык
Негизинен Arduino менен туташтыра турган нерсеңизди сиз каалаган сенсор катары колдонсо болот. Жалгыз чектөө, сенсорду окуу мүмкүн болушунча тезирээк болушу керек, бул үчүн 1 зымдуу байланыш үчүн көп убакыт калды (Arduino 1-зымдуу дисплейи (144 Chars) жөнүндө менин көрсөтмөмдүн 2-кадамын тапшырыңыз) мисал алуу үчүн).
Мүмкүн болгон жабдуулардын мисалы аба ырайы бекети болушу мүмкүн, мисалы:
https://shop.boxtec.ch/wetter-messer-p-41289.html
Кошумча же анын ордуна сиз жөн гана Arduino'ду сенсор катары колдонууну каалашыңыз мүмкүн. Бул тууралуу көбүрөөк маалымат менин Arduino Lesser белгилүү өзгөчөлүктөрү жөнүндө окуй аласыз - мүмкүн болгон маанилер булак чыңалуусу жана ички температура.
Бул жерде мен жакында эле түзгөн аппараттын сүрөтү. Мен сенсорлордун комбинациясын колдонбойт деп ойлойм, мен бул жерде кененирээк маалымат бербейм, кодду текшериңиз жана жардам керек болсо суроолорду бериңиз.
3 -кадам: Түзмөктү сыноо
Аны тармагыңызга туташтырып, программалык камсыздоону текшериңиз, анда бардык ROM идентификаторлору бар жана алар температура катары кайтып келишет.
4 -кадам: Тиркеме: ATtiny85
Жалгыз түзмөктөр (эс тутумун чектөө) ATtiny85те да жасалышы мүмкүн. Бул бир нече кадамдарды талап кылат, анткени биз ATtiny85ти Arduino Uno менен ISP катары Arduino IDEдин жардамы менен программалайбыз:
-
Шилтемелер
- https://playground.boxtec.ch/doku.php/arduino/att…
- https://sebastian.expert/could-not-find-usbtiny-d…
- https://learn.sparkfun.com/tutorials/tiny-avr-pro…
- https://forum.arduino.cc/index.php?topic=425532.0
- https://forum.arduino.cc/index.php?topic=128963.0
- колдонуу Arduino IDE> = 1.8.3
-
IDEге ATtiny опциясын орнотуңуз
- Файл> Тандоолор> Кошумча такталар менеджери URL'дери:
- Tools> Board: ??? > Такта менеджери…
- издөө: "кичинекей" жана орнотуу
-
ISO эскизин Unoго жүктөө
Файл> Мисалдар> ArduinoISP> ArduinoISP
-
ATtiny85ти программалоо (нөлдүк күч) розеткасына салып, зым менен байланыштырыңыз:
- Arduino Pin MOSI D11 ATtiny Pin 5ке
- ATDiny Pin 6 үчүн Arduino Pin MISO D12
- ATDiny Pin 7ге Arduino Pin SCK D13
- Arduino Pin D10 ATtiny Pin 1ге кайтарылды
- ATDiny Pin 4 үчүн Arduino Pin GND
- ATduTiny Pin 8 үчүн Arduino Pin VCC
- (> Arduino Uno RESET пин 10UF капкак керек болушу мүмкүн)
-
ATtiny85ти тандаңыз (сүрөттү караңыз):
- Такта: "ATtiny25/45/85"
- Таймер 1 Сааты: "CPU"
- B. O. D.: "B. O. D. Майып"
- LTO (1.6.11 + гана): "Өчүрүлгөн"
- Чип: "ATtiny85"
- Саат: "8 МГц (ички)" (ATtiny85 жана ATtiny84 шайкеш)
- Саат: "16 МГц (PLL)" (ATtiny85 үчүн альтернативдүү жөндөө)
- Порт: ???
-
программист тандоо:
Куралдар> Программист: "Arduino ISP катары" ("ArduinoISP" ЭМЕС!)
-
сактандыруучу орнотууларды коюу (саат ж. б.):
Куралдар> Bootloader күйгүзүү
- бул кодду жүктөңүз (программисттин катасы LED өчүрүлүшү керек, болбосо аны кайра коюңуз)
-
ATtinyX5 пин жайгашуусу (ATtiny85):
- Pin 1: PB5 (RST)
- Pin 2: PB3 (A3) - милдеттүү түрдө 1 <-TX 220ohm аркылуу туташкан
- Pin 3: PB4 (A2) - 1 -зым ДАТАга туташкан
- Pin 4: GND - GND менен туташкан
- Pin 5: PB0 (PWM) - I2C SDA сенсоруна туташкан
- Pin 6: PB1 (PWM) - LEDга 4.7k менен GNDге туташкан
- Pin 7: PB2 (A1) - I2C SCL сенсоруна туташкан
- Pin 8: VCC - 5Vга туташкан
ATTiny85 менен иштөө бир аз көбүрөөк иштөөнү талап кылат, анткени I2C comm (adafruit/TinyWireM) жана сериялык чыгаруу (TinyDebugSerial) үчүн кошумча китепканаларды алуу керек. Кошумча эс тутуму чектелүү болгондуктан #define менен көп иштөөнү каалашыңыз мүмкүн. сериялык мүчүлүштүктөрдү жок кылуу. Мисалда сиз мунун баарынын чогулганын көрө аласыз.
Биринчи кадамды текшерүү үчүн, LED туура жыштыкта, 0,5 Гцте жаркырап турганын текшерүү керек. Андан кийин аны 1wire автобусуна туташтырып, жаңы түзмөктү текшериңиз.
Сунушталууда:
Raspberry Pi Zero Hidden Hacking Device: 8 Steps
Raspberry Pi Zero Hidden Hacking Device: Raspberry Pi Zero Hidden Hacking Device - бул ноутбукту алып чыга албаган коомдук жайларда пестестинг үчүн колдонула турган көчмө хакердик түзмөк, анткени айланаңыздагы кээ бир адамдар сиз кызыктай бир нерсе кылып жатат деп шектенишиңиз мүмкүн. бул жерге туташа аласыз
Lego Multi Device Charge Dock, Phone Tablet: 15 Steps (Сүрөттөр менен)
Lego Multi Device Charge Dock, Phone Tablet: өзүңүздүн лего заряддоо докун куруңуз
IOT123 - ASSIMILATE SENSOR HUB: ICOS10 GENERIC SHELL (HOOKUP WIRE) Ассамблеясы: 4 кадам
IOT123 - ASSIMILATE SENSOR HUB: ICOS10 GENERIC SHELL (HOOKUP WIRE) Монтаж: UPDATE Бизге көбүрөөк ишенимдүүлүк үчүн IDC схемасын (HOOKUP эмес) колдонууну сунуштайбыз. Бул HOOKUP жамааты, эгерде сиз чынжырды текшерүүгө убактыңыз болсо, маанилүү эмес операциялар үчүн жакшы. Мен кээ бир зымдарды (панелдердин үстүңкү катмары: кызыл/сары) таптым
IOT123 - ASSIMILATE SENSOR HUB: ICOS10 GENERIC SHELL (IDC) ASSEMBLY: 6 Steps
IOT123 - ASSIMILATE SENSOR HUB: ICOS10 GENERIC SHELL (IDC) ASSEMBLY: NOTEBU ASSIMILATE SENSOR HUB: ICOS10 GENERIC SHELL (HOOKUP WIRE) Ассамблеясынын жакшыртылган (схеманын бекемдиги) версиясы. Ал тезирээк жыйналып, сапаты жогору схемага ээ, бирок кымбатыраак (10 сенсорду колдосо ~ 10 доллар кошумча). Негизги фе
Corn Flakes Packet Iphone/ Multimedia Device Stand: 8 Steps
Corn Flakes Packet Iphone/ Multimedia Device Stand: Эч качан кинону, альбомдун көркөм сүрөт слайдшоусун көргүңүз келген жок .. кубаттагычыңыздан алыс, кофе үстөлүңүздө, иш столунда. жакшы, .. Бул жерде мен сиздин ipod/ iphone, sq үчүн жүгөрү үлпүлдөк пакетинен жасалган үмүт менен бекем стендди кантип жасоону сүрөттөп берем