Багатофункціональний годинник-термостат з дистанційним управлінням

  • Час 22-04-2015, 12:22
  • Автор admin
  • Число коментарів 0 Комент.
  • Силка url

Виникла у мене потреба в настільних годинниках-термометрі, щоб крім часу можна було дізнатися температуру на вулиці і в будинку. В інтернеті є безліч конструкцій такого роду і навіть дуже просунутих, але я так і не зробив свій вибір на користь якоїсь із них. У кожній бракувало чого те, що як мені здавалося просто необхідно мати подібного роду пристроїв. Просто у мене є певний набір вимог, з яких я так і не зміг нічого забрати, щоб повторити якусь з цих конструкцій. У моєму уявленні годинник повинні працювати за принципом включив, настроїв і забув, тобто якомога рідше вдаватися до їх обслуговування (наприклад коригувати час внаслідок його відходу, знову встановлювати після збоїв електроживлення, переводити на літній і зимовий час і т. П.), показання на індикаторі повинні бути видні здалеку, але не висвітлювати кімнату вночі, бажано наявність дистанційного керування.

Виправлення фузов AVR

  • Час 21-04-2015, 13:26
  • Автор admin
  • Число коментарів 0 Комент.
  • Силка url

Порятунок контролерів справа рук самих контролерів. Ця схема для виправлення не правильно зошитах фузов ATTINY2313 (хоча напевно можна перепрограмувати та інші AVR, у них команди схожі) використовує режим паралельного програмування. МК відновлює заводські установки, а головне біт SPIEN, включається внутрішній генератор, і знову можна використовувати послідовний програматор, я використовую USB на atmega8. Швидкість його треба зменшити, тобто замкнути висновок 14 (PB0) через резистор 300 ом на корпус. Підвищена швидкість мабуть призначена для програмування МК вставляються в панельки знаходяться на платі програматора. У мене ATTINY2313 стояв на макетної платі з'єднаної проводами (приблизно 20см) з програматором, і при підвищеній швидкості були помилки читання і FLASH і сигнатури і фузов.

STM32F4. Урок 18 - Низькорівневий I2C

  • Час 17-04-2015, 18:31
  • Автор admin
  • Число коментарів 0 Комент.
  • Силка url

Ця бібліотека призначена для використання інтерфейсу I2C в режимі Master. Вибрані висновки I2C повинні бути записані в C-файлі (в H-файлі можна регулювати частоту тактирования). До ліній SCL і SDA необхідно підключити підтягують вгору резистори по 4,7Ком, інакше інтерфейс працювати не буде. Дана бібліотека дозволяє використовувати низькорівневі функції для відправки та отримання байтів від пристрою Slave.В бібліотеці є функції для прийому / відправки як одиночних байтів, так і послідовності. Для прийому / відправки кількох байт використовується масив. Також передбачена функція паузи, необхідна для роботи з повільними пристроями. У прикладі наведено три однакові бібліотеки - I2C1, I2C2 і I2C3. Для роботи з бібліотекою I2C1 SCL підключається до PB6, а SDA - до PB7.

Вимоги:

   Модулі CooCox-IDE: GPIO, I2C.

STM32F4. Урок 17 - Управління LIS302DL через SPI

  • Час 16-04-2015, 12:27
  • Автор admin
  • Число коментарів 0 Комент.
  • Силка url

На платі Discovery встановлений 3х-осьовий датчик прискорення (LIS302DL). Примітка: "нові" плати оснащені мікросхемами LIS3DSH, бібліотека для роботи з ними є в блозі автора. Даний датчик дозволяє вимірювати прискорення по осях X, Y і Z. Датчик має розрядність 8 біт і дозвіл +/- 2g або +/- 8g. Дана бібліотека дозволяє легко використовувати мікросхему, досить циклічно викликати функцію "UB_LIS302_Read ()" і отримати значення прискорення всіх трьох осей (у прикладі використовується дві осі в діапазоні значень від -2000 до 2000). Датчик може бути використаний через опитування по перериванню, але для роз'яснення роботи необхідно зв'язатися з автором. Увага: в керівництві користувача до плати STM32F4 Discovery помилка, як чіпселект вказано висновок PE2, насправді використовується PE3. Для роботи мікросхеми необхідна бібліотека STM32_UB_SPI1.

Урок по mikropascal for AVR.I2C

  • Час 13-04-2015, 17:42
  • Автор admin
  • Число коментарів 0 Комент.
  • Силка url

I2C - послідовна шина даних для зв'язку інтегральних схем. I2C використовує 2 двонаправлені лінії зв'язку SDA і SCL, підтягнуті до напруги харчування.

Приклад роботи I2C інтерфейсу.

Урок по mikropascal for AVR.I2C

STM32F4. Урок 16 - Робота з ЦАП MAX5250 по SPI

  • Час 8-04-2015, 19:22
  • Автор admin
  • Число коментарів 0 Комент.
  • Силка url

Дана бібліотека дозволяє управляти мікросхемою MAX5250 (чотири канали ЦАП) на зовнішньому модулі по SPI інтерфейсу з плати STM32F4.
Для роботи з мікросхемою так само використовується бібліотека SPI низького рівня (SPI2).

Демонстрація роботи:

STM32F4. Урок 16 - Робота з ЦАП MAX5250 по SPI

Урок по PWM (ШІМ) для mikroPascal for AVR

  • Час 6-04-2015, 13:30
  • Автор admin
  • Число коментарів 0 Комент.
  • Силка url

Широтно-імпульсна модуляція (ШІМ) або Pulse-width modulation (PWM) - управління середньому значенням напруги шляхом зміни шпаруватості імпульсів, керуючих ключем. Існує аналогова ШІМ і цифрова ШІМ. Аналогову ми чіпати не будемо, т.к в мікроконтролерах використовується цифрова. У цифровій ШІМ середнє значення напруги виходить шляхом розподілу періоду на частини і заповнення їх прямокутними імпульсами. Середня величина залежить від кількості прямокутних імпульсів.

Приклад роботи цифрової ШІМ.

Урок по PWM (ШІМ) для mikroPascal for AVR

STM32F4. Урок 15 - Низькорівневий SPI

  • Час 2-04-2015, 19:18
  • Автор admin
  • Число коментарів 0 Комент.
  • Силка url

Дана бібліотека дозволяє використовувати інтерфейс SPI в режимі майстер-пристрої.
Висновки SPI, які будуть використовуватися, повинні бути вказані в C-файлі (в H-файлі може бути обрані тактова частота і дільник).
Бібліотека дозволяє працювати з SPI тільки на низькому рівні, можна ініціалізувати інтерфейс (в одному з чотирьох режимів роботи SPI) і відправити / прийняти байт.
Використовувані чип-Селект вибираються за допомогою головної функції.
У даному прикладі присутні три однакові бібліотеки - SPI1, SPI2 і SPI3.

У програмі була використана бібліотека SPI2, розташування висновків наступне:

SCK до PB13
MOSI до PB15
MISO до PB14

Вимоги:

Модулі CooCox-IDE: GPIO, SPI.
Підтримувані бібліотеки: відсутні.

Перерахування:

typedef enum {SPI_MODE_0 = 0, // CPOL = 0, CPHA = 0 SPI_MODE_1, // CPOL = 0, CPHA = 1 SPI_MODE_2, // CPOL = 1, CPHA = 0 SPI_MODE_3 // CPOL = 1, CPHA = 1} SPI1_Mode_t ;

Функції:

STM32F4. Урок 14 - АЦП з використанням DMA

  • Час 30-03-2015, 12:59
  • Автор admin
  • Число коментарів 0 Комент.
  • Силка url

Дана бібліотека дозволяє використовувати АЦП для циклічного зчитування даних із застосуванням DMA, що дозволяє знизити навантаження на процесор. Максимальна кількість використовуваних каналів - 16.
Налаштування проводиться (як і в STM32F4. Урок 5 - робота з АЦП) в C-файли. У ньому для кожного каналу АЦП повинен бути призначений висновок.
До даної статті прикріплено 2 бібліотеки, ADC1 і ADC2, які можна використовувати одночасно, якщо необхідно більше 16 каналів АЦП.

Приклад роботи:

STM32F4. Урок 14 - АЦП з використанням DMA