Menü English Ukrainian Rusça Ana Sayfa

Hobiler ve profesyoneller için ücretsiz teknik kütüphane Ücretsiz teknik kütüphane


RADYO ELEKTRONİK VE ELEKTRİK MÜHENDİSLİĞİ ANSİKLOPEDİSİ
Ücretsiz kütüphane / Radyo-elektronik ve elektrikli cihazların şemaları

Bir bilgisayar ile PIC denetleyici arayüzü. Radyo elektroniği ve elektrik mühendisliği ansiklopedisi

Ücretsiz teknik kütüphane

Radyo elektroniği ve elektrik mühendisliği ansiklopedisi / Mikrodenetleyiciler

makale yorumları makale yorumları

При разработке устройства на микроконтроллере (МК) нередко возникает проблема его связи с компьютером для обмена информацией. В большинстве случаев требуется двунаправленный режим при сравнительно невысокой скорости обмена. В лучшем случае МК может иметь последовательный интерфейс, но чаще всего его приходится выбирать из числа дешевых, не оснащенных таким интерфейсом. Например, очень популярный в последнее время МК PIC16F84A фирмы Microchip такого интерфейса не имеет. В статье рассматривается вариант программной реализации последовательного интерфейса как со стороны МК, так и со стороны компьютера.

Для связи с устройством на МК можно использовать параллельный (LPT) или последовательный (СОМ) порт компьютера. С первым работать проще - в нем можно использовать относительно большее число входных и выходных сигналов, уровни которых совместимы с ТТЛ. Недостатком этого порта является то, что если под DOS или Linux для его использования достаточно простых операций ввода/вывода, то для корректной работы под Windows необходимо строгое соблюдение протокола передачи данных, который при работе с МК не эффективен. Возможно и прямое управление отдельными линиями LPT порта, но для этого требуется установка специального драйвера. "Недостатком" LPT порта можно считать то, что в большинстве компьютеров он всего лишь один и, как правило, занят принтером.

Главные преимущества СОМ порта в том, что стандартный программный интерфейс Windows (API) позволяет непосредственно управлять некоторыми выходными линиями и контролировать входные, а также имеет функцию ожидания некоторого события, связанного с СОМ портом. Его достоинство и в том, что стандарт RS-232, по которому выполнены СОМ порты, допускает подключение и отключение кабелей во время работы устройств (hot plug). К тому же почти всегда в компьютере имеется свободный СОМ порт. Недостаток порта - отличный от ТТЛ уровень сигналов, в котором низкому логическому уровню соответствует напряжение -12, а высокому - +12 В.

Реализация стандартного интерфейса RS-232 потребовала бы от МК точного соблюдения временных интервалов между выдаваемыми сигналами. В реальной ситуации кварцевый резонатор микроконтроллера может не соответствовать частоте передачи данных, а сам МК обычно занят чем-то более важным, чем формирование точных временных интервалов. В результате оказывается проще программно реализовать последовательный синхронный вариант обмена, когда каждый бит данных подтверждается импульсом синхронизации.

Принципиальная схема предлагаемого интерфейса показана на рис. 1.

Bilgisayar ile PIC denetleyici arayüzü

Для преобразования уровней RS-232 в ТТЛ используются резистивные делители R1R4 и R2R5. Диоды VD1 и VD2 необходимы для того, чтобы не пропускать отрицательное напряжение, соответствующее логическому нулю. Выходной ТТЛ сигнал МК в преобразовании не нуждается и может быть подан на входные линии СОМ порта непосредственно. Резистор R3 ограничивает выходной ток МК при возможном случайном коротком замыкании.

Как видно из схемы, для связи с компьютером требуются четыре провода. Компьютер инициирует обмен данными, выдавая синхронизирующие импульсы в линию DTR, выставляя при этом на линии RTS передаваемые данные и получая по линии CTS принимаемые. Изменять данные компьютер и МК могут только при низком логическом уровне сигнала синхронизации. Такой вариант реализации интерфейса позволяет реализовать дуплексный режим передачи данных.

Номера контактов XS1 на схеме указаны для розетки DB-25F при использовании стандартного модемного кабеля. Номера контактов для других разъемов и при использовании нуль-модемного кабеля приведены в табл. 1.

Bilgisayar ile PIC denetleyici arayüzü

Частота следования синхронизирующих импульсов должна выбираться такой, чтобы МК гарантированно успевал обрабатывать данные от компьютера, реагируя на каждый синхронизирующий импульс. Информационные биты передаются последовательно. По окончании передачи битов одного байта следует передача битов следующего, при этом первым передается старший информационный бит. Для приведения интерфейса в исходное состояние (установка номера передаваемого байта в 0) компьютер должен при лог. 1 на линии синхронизации изменить состояние линии данных. МК выдает новый бит данных на линии CTS по спаду импульсов положительной полярности на входе синхронизации DTR, а считывает данные с линии RTS по фронту импульсов положительной полярности. Обмен можно в любой момент прервать, прекратив подачу импульсов синхронизации. Временная диаграмма обмена данными приведена на рис. 2.

Bilgisayar ile PIC denetleyici arayüzü

При реализации интерфейса рекомендуется в некоторых байтах передавать контрольные значения для проверки правильности передаваемых данных.

Исходный код процедуры для МК PIC16F84A [1] на языке С, реализующий предлагаемый интерфейс, приведен в табл. 2. Вызов процедуры link() находится в основном цикле программы и при работе МК вызывается постоянно для того, чтобы контролировать состояние интерфейса. Все переменные, используемые процедурой, объявлены как глобальные. При каждом вызове она считывает состояния входных линий интерфейса (RB6 и RB7) и сравнивает с их состояниями при предыдущем вызове. При некоторых условиях (спад синхронизации, фронт синхронизации, сброс интерфейса) выполняются действия согласно логике работы интерфейса.

Bilgisayar ile PIC denetleyici arayüzü

Исходный код процедуры для компьютера на языке Pascal (Delphi) приведен в табл. 3. Здесь процедура link однократно вызывается для проведения акта обмена информацией с МК. Перед ее вызовом необходимо заполнить передаваемый буфер obuf. По окончании работы процедуры принятые данные будут находиться в массиве ibuf. Процедура открывает указанный СОМ порт компьютера и с помощью функций Windows API [2] управляет состоянием выходных линий и опрашивает входные. После завершения обмена информацией порт закрывается.

Bilgisayar ile PIC denetleyici arayüzü

В процедуре link временные задержки реализованы с помощью функции sleep(). Их значения рассчитывают или подбирают экспериментально по отсутствию потери бит при обмене данными между МК и компьютером. В примере указаны задержки для обмена с PIC-кон-троллером с кварцевым резонатором на частоту 4 МГц, который, кроме того, совершает и другую полезную работу. Если процедура обмена выполняется слишком долго, ее допускается выносить в отдельную нить выполнения операционной системы, чтобы она выполнялась параллельно основной программе [2].

Если при обмене информацией требуются отдельно чтение и запись, можно разнести по различным адресам массивы передаваемых и принимаемых данных, как показано на рис. 2.

В МК формирование передаваемых данных и использование принимаемых удобно построить в виде процедур upload() и download(), вызываемых перед передачей и при приеме очередного байта соответственно. Первая из них должна возвращать значение передаваемого байта по его номеру в передаваемом пакете информации, вторая получает значение принятого байта и его номер в пакете и должна использовать эти значения для изменения регистров МК, записи в EEPROM и пр. Реализация этих процедур для обработки информационного пакета размером 4 байта (табл. 4) показана в табл. 5.

Bilgisayar ile PIC denetleyici arayüzü

Пример программы для МК приведен для компилятора С2С [3]. Процедура для компьютера может быть использована в программе, написанной на Borland Delphi 3 и выше.

Edebiyat

  1. <microchip.com/download/ lrt/pline/picmicro/families/16f8x/30430c.pdf >.
  2. Microsoft Developer Network, Technical Articles. - <msdn.microsoft.com>.
  3. <picant.com/c2c/c.html>.

Yazar: S.Kuleshov, Kurgan

Diğer makalelere bakın bölüm Mikrodenetleyiciler.

Oku ve yaz yararlı bu makaleye yapılan yorumlar.

<< Geri

En son bilim ve teknoloji haberleri, yeni elektronikler:

Sıcak biranın alkol içeriği 07.05.2024

En yaygın alkollü içeceklerden biri olan biranın, tüketim sıcaklığına bağlı olarak değişebilen kendine özgü bir tadı vardır. Uluslararası bir bilim insanı ekibi tarafından yapılan yeni bir araştırma, bira sıcaklığının alkol tadı algısı üzerinde önemli bir etkiye sahip olduğunu ortaya çıkardı. Malzeme bilimcisi Lei Jiang liderliğindeki çalışma, farklı sıcaklıklarda etanol ve su moleküllerinin farklı türde kümeler oluşturduğunu ve bunun da alkol tadı algısını etkilediğini buldu. Düşük sıcaklıklarda, "etanol" tadının keskinliğini azaltan ve içeceğin tadının daha az alkollü olmasını sağlayan daha fazla piramit benzeri kümeler oluşur. Aksine, sıcaklık arttıkça kümeler daha zincir benzeri hale gelir ve bu da daha belirgin bir alkol tadıyla sonuçlanır. Bu, baijiu gibi bazı alkollü içeceklerin tadının neden sıcaklığa bağlı olarak değişebileceğini açıklıyor. Elde edilen veriler içecek üreticileri için yeni fırsatlar sunuyor. ... >>

Kumar bağımlılığı için başlıca risk faktörü 07.05.2024

Bilgisayar oyunları gençler arasında giderek daha popüler bir eğlence biçimi haline geliyor ancak buna bağlı oyun bağımlılığı riski önemli bir sorun olmaya devam ediyor. Amerikalı bilim insanları bu bağımlılığa katkıda bulunan ana faktörleri belirlemek ve önlenmesine yönelik öneriler sunmak amacıyla bir çalışma yürüttüler. Altı yıl boyunca 385 genç, hangi faktörlerin onları kumar bağımlılığına yatkın hale getirebileceğini bulmak için takip edildi. Sonuçlar, çalışmaya katılanların %90'ının bağımlılık riski altında olmadığını, %10'unun ise kumar bağımlısı olduğunu gösterdi. Kumar bağımlılığının başlangıcındaki temel faktörün düşük düzeyde olumlu sosyal davranış olduğu ortaya çıktı. Düşük düzeyde olumlu sosyal davranışa sahip gençler, başkalarının yardım ve desteğine ilgi göstermezler, bu da gerçek dünyayla temasın kaybolmasına ve bilgisayar oyunlarının sunduğu sanal gerçekliğe bağımlılığın derinleşmesine yol açabilir. Bu sonuçlara dayanarak bilim insanları ... >>

Trafik gürültüsü civcivlerin büyümesini geciktiriyor 06.05.2024

Modern şehirlerde bizi çevreleyen sesler giderek daha keskin hale geliyor. Ancak çok az insan bu gürültünün hayvanlar dünyasını, özellikle de henüz yumurtalarından çıkmamış civcivler gibi hassas canlıları nasıl etkilediğini düşünüyor. Son araştırmalar bu konuya ışık tutuyor ve gelişimleri ve hayatta kalmaları açısından ciddi sonuçlara işaret ediyor. Bilim insanları, baklava sırtlı zebra yavrularının trafik gürültüsüne maruz kalmasının gelişimlerinde ciddi aksamalara yol açabileceğini buldu. Deneyler, gürültü kirliliğinin yumurtadan çıkmalarını önemli ölçüde geciktirebildiğini ve ortaya çıkan civcivlerin sağlığı geliştiren bir dizi sorunla karşı karşıya olduğunu göstermiştir. Araştırmacılar ayrıca gürültü kirliliğinin olumsuz etkilerinin yetişkin kuşlara da yayıldığını buldu. Üreme şansının azalması ve doğurganlığın azalması, trafik gürültüsünün yaban hayatı üzerindeki uzun vadeli etkilerini göstermektedir. Araştırma sonuçları ihtiyacı vurguluyor ... >>

Arşivden rastgele haberler

Canlı bir antibiyotik olarak yırtıcı bakteriler 30.11.2016

Imperial College London'dan (İngiltere) Dr. Serge Mostowy ve meslektaşları, "yırtıcı" bakteri Bdellovibrio bacteriovorus'un, antibiyotiklere karşı giderek daha fazla direnç geliştiren ve ciddi inflamatuar hastalıklara neden olan Shigella bakterilerine karşı etkili bir ilaç olarak kullanılabileceğini buldu.

Shigella bakterileri, her yıl 160 milyondan fazla hastalık vakasından ve bir milyondan fazla ölümden sorumludur. Sözde "gezgin ishali"nin en yaygın nedenidir. İlaca dirençli bakteri türlerinin yayılması da artıyor, çünkü ishal genellikle tedavi olmaksızın kendi kendine düzelse de, antibiyotikler genellikle hafif vakalarda bile hastalığı daha hızlı durdurmak için kullanılıyor. Antibiyotik direnci, araştırmacıları bakterinin doğal "düşmanlarını" araştırmaya sevk etti.

Deney için araştırmacılar, streptomisin ve karbenisiline dirençli Shigella flexner suşu M90T'nin ölümcül titresi ile enfekte olmuş zebra balığı yavrularını kullandılar. Bilim adamları daha sonra enfekte yaralara Bdellovibrio bakterisini enjekte ettiler ve Shigella sayısında bir azalma gözlemlediler. "Yırtıcı" bir bakterinin yokluğunda, zebra balığının patojenik bir enfeksiyonun üremesini kontrol edememesi önemlidir.

Bilim adamları, Bdellovibrio bakterisinin doğal ortamda E. coli ve Salmonella gibi bir dizi Gram-negatif bakteriyi öldürebildiğini bulmuşlardır. Önceki araştırmalar, oral tedavi olarak alındığında tavukların midesinde hastalığa neden olan bakteri sayısını azaltabileceğini göstermişti, ancak yara ve organlardaki enfeksiyonlara yönelik tedaviler geliştirmeye artan bir ihtiyaç var. Bdellovibrio bacteriovorus'un başarılı kullanımı, bir dizi ilaca dirençli Gram-negatif bakteriyel enfeksiyonun tedavisinde potansiyel kullanımını gösterir.

Diğer bakterilerden kurtulmak için bakterileri kullanmak alışılmadık bir çözüm gibi görünebilir, ancak ilaca dirençli enfeksiyonlardan kaynaklanan tehdidin ışığında, yararlı bakteri etkileşimleri potansiyeli göz ardı edilmemelidir. Araştırmacılar, en son antibiyotik serilerine giderek daha fazla güveniyorlar, ancak bu çığır açan araştırma, yırtıcı bakterilerin mevcut enfeksiyonla savaşan ilaçlara nasıl önemli bir katkı sağlayabileceğini gösteriyor.

Diğer ilginç haberler:

▪ Virüsler de hastalanır

▪ İki bit bilgi - bir atomda

▪ Yapay zeka yeni bir malzeme yarattı

▪ Sinir hücreleri hala yenileniyor

▪ Samsung M2 ve C2 Taşınabilir

Bilim ve teknolojinin haber akışı, yeni elektronik

 

Ücretsiz Teknik Kitaplığın ilginç malzemeleri:

▪ site bölümü Yıldırımdan korunma. Makale seçimi

▪ video düzenleme makalesi. Tutkal dili. video sanatı

▪ makale Yahudi bir kız Ari çocuklar için fotoğraf yarışmasını nasıl kazandı? ayrıntılı cevap

▪ makale Soleros avrupa. Efsaneler, yetiştirme, uygulama yöntemleri

▪ Makale Nemlendirici. Radyo elektroniği ve elektrik mühendisliği ansiklopedisi

▪ makale Radyo mikrofonu, 88...108 MHz. Radyo elektroniği ve elektrik mühendisliği ansiklopedisi

Bu makaleye yorumunuzu bırakın:

Adı:


E-posta isteğe bağlı):


Yorum:





Bu sayfanın tüm dilleri

Ana sayfa | Kütüphane | Makaleler | Site haritası | Site incelemeleri

www.diagram.com.ua

www.diagram.com.ua
2000-2024