Студопедия — Для усиления тока строк установим полевой транзистор. Будем устанавливать ПТ на каждый вывод сдвигового регистра.
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Для усиления тока строк установим полевой транзистор. Будем устанавливать ПТ на каждый вывод сдвигового регистра.






 

 

Данный полевой триод должен иметь большой номинальный ток (5-10-40 А) и очень маленькое пороговое напряжение (0,5-1,5-2 В), поэтому выбираем транзистор серии: IRF7324

 

 

 

Он содержит 2 транзистора в одном корпусе, поэтому таких ПТ в данном курсовом проекте понадобится не 16 штук, а всего 8. Подробные характеристики указаны в приложенной литературе[9].

 

Т.к. через резисторы R2-R17(строки) ток не протекает, их номиналы выбираем равными 100 Ом.

Рассчитаем сопротивления R18-R217(столбцы):

 

 

Таким образом, выбираем данные сопротивления равными 47 Ом[5].

 

 
 

 

 


5. Алгоритм программы

 
 


 
 

 

 


НЕТ

       
 
 
   

 

 


ДА

 
 

 

 


 

6. Программа

 

#include <LPC214X.H>

#include "Font_12x16.H" //файл, содержащий таблицу знакогенератора

 

const char Str[]=" "; //строковая константа хранит движущиеся символы

int I,i,k; //

const int L=200; //ширина индикатора (число точек)

const int M=20; //число кадров, когда строка остается неподвижной

const int N=sizeof(Str)-1; // формирование длины строки (число символов)

int T=0, K=0; // счетчики столбцов изображения и столбцов индикатора

char Map[N*6]; //карта индикатора, которая хранит изображение всей строки, поэтому имеет размерность 6N

 

__irq void STROKA() // процедура обработки прерывания

 

{

unsigned int Code;

I=K % L+T; // для «цикличности»,посл. столбец сменяется первым

if (I>=N*6) I-=N*6;// Если I больше значения 6N, он откорректируется

Code=0x100 << K % L | Map[I];// Формирование управляющего кода

S0SPDR=~Code; // передача по SPI

while (!(S0SPSR & 0x80)); // передача?

IO0SET=0x8000; //формирование строба на входах RCK микросхем

IO0CLR=0x8000; // 74HC595, подключенных параллельно к линии P0.15.

 

 

if (++K==L*M)

{

K=0;

if (++T==6*N) T=0;

}

 

T0IR=1; // cброс флага запроса прерывания

VICVectAddr=0;

}

 

int main (void)// основная программа

{

IO0DIR=0x8000; //настройка на выход линии P0.15

PINSEL0=0x1100; //перевод линии P0.6 в режим MOSI, линии P0.4 в SCK

S0SPCR=0x64; //настройка передатчика SPI

S0SPCCR=8; //настройка тактовой частоты на линию SCK

 

for (k=0;k<N;k++) // формирование карты индикатора

{

for (i=0;i<6;i++)

 

{

Map[k*6+i]=Font_6x8_Data[Str[k]*6+i];

}

}

 

T0MR0=9375; //настройка таймера

T0MCR=3; //разрешить сброс и запрос прерывания при совпадении

T0TCR=1; //включить таймер

VICVectAddr0=(unsigned) STROKA; // настройка прерывания

VICVectCntl0=0x20|4;

VICIntEnable=0x10;

 

while (1); // вечный цикл

}

 

7. Принцип работы:

 

Динамическая индикация - это процесс вывода информации, изменяющейся во времени. Т.е. на небольшом участке пространства(в нашем случае – матричного индикатора) можно отобразить целую строку символов. Сделать это достаточно просто - необходимо лишь сдвигать информацию(строку) в одном направлении с течением времени. Другими словами- в 1-ю секунду мы отображаем “СТР”, во вторую-“ТРО”, а в третью –“РОК”, и четвертую-“ОКА”. Если промежуток времени достаточно малый, то человек воспринимает все как бегущую надпись “СТРОКА”. Однако, если нам необходимо вывести этот текст на светодиодный матрице, скажем 16 строк на 200 столбцов, то минимальное количество отводов будет 200 х 16 = 3200 шт. Это достаточно много для такой небольшой матрицы. Поэтому было придумано управлять такими сборками по принципу СТОЛБЕЦ-СТРОКА. Т.е. для включения любого одного сегмента(светодиода) необходимо подать «+» питания на строку, в которой находиться данный сегмент, и «-»на столбец с тем же сегментом.

Теперь подсчитаем: 16 «+» и 200 «-» = 216 отводов, вместо 3200. Однако не всё так просто. Нам в момент времени надо вывести конкретный набор символов, а не сегмент. И опять на помощь приходит «человеческий фактор». Когда мы смотрим на большую быстро мерцающую лампочку, то для нас она кажется просто горящей. Аналогично и с мониторами - частота обновления заставляет нас воспринимать набор мерцающих пикселей как картинку. Значит для получения простых и неподвижных символов нам необходимо в короткий промежуток времени включать определенные сегменты строк на соответствующем столбце (например, у нас матрица 3х3 светодиода, нам необходимо вывести +, это делается так: сначала зажигаем середину первого столбца, ждем небольшое время(видим -), выключаем столбец, включаем 2 столбец и зажигаем три сегмента (видим |), опять ждем и выключаем, потом переходим на последний, выключаем середину (видим -) и опять переходим на начало. Так при повторении с достаточной частотой мы воспримем это как подвижный символ (+). Значит, для вывода бегущей строки в таком режиме, необходимо выводить неподвижную часть символов с достаточной частотой обновления, меняя их через определенное время для эффекта бега.

 
 

 


Список использованной литературы:

1. Сташин В.В. Проектирование цифровых устройств на однокристальных микроконтроллерах.. –М,: Энергоатомиздат. 1990.

2. Александров К.К.,Кузьмина Е.Г. Электротехнические чертежи и схемы. –М,: Энергоатомиздат. 1990

3. Конспект лекций по дисциплине: Проектирование микропроцессорных систем. ВлГУ

4. Кочуров О. М., Программирование встраиваемых систем на основе микроконтроллеров LPC214x. — Владимир: ВлГУ — 2011, 258 с.

5. Аксенов А.И., Нефедов А.В. Элементы схем бытовой радиоаппаратуры. Конденсаторы. Резисторы: Справочник. - М.: Радио и связь. 1995.- 272 с.

6. www.nxp.com

7. www.maxim-ic.com

8. www.kingbright.com

9. www.irf.com

 

 







Дата добавления: 2015-10-15; просмотров: 781. Нарушение авторских прав; Мы поможем в написании вашей работы!



Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...

Вычисление основной дактилоскопической формулы Вычислением основной дактоформулы обычно занимается следователь. Для этого все десять пальцев разбиваются на пять пар...

Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...

Кардиналистский и ординалистский подходы Кардиналистский (количественный подход) к анализу полезности основан на представлении о возможности измерения различных благ в условных единицах полезности...

Ситуация 26. ПРОВЕРЕНО МИНЗДРАВОМ   Станислав Свердлов закончил российско-американский факультет менеджмента Томского государственного университета...

Различия в философии античности, средневековья и Возрождения ♦Венцом античной философии было: Единое Благо, Мировой Ум, Мировая Душа, Космос...

Характерные черты немецкой классической философии 1. Особое понимание роли философии в истории человечества, в развитии мировой культуры. Классические немецкие философы полагали, что философия призвана быть критической совестью культуры, «душой» культуры. 2. Исследовались не только человеческая...

Классификация ИС по признаку структурированности задач Так как основное назначение ИС – автоматизировать информационные процессы для решения определенных задач, то одна из основных классификаций – это классификация ИС по степени структурированности задач...

Внешняя политика России 1894- 1917 гг. Внешнюю политику Николая II и первый период его царствования определяли, по меньшей мере три важных фактора...

Оценка качества Анализ документации. Имеющийся рецепт, паспорт письменного контроля и номер лекарственной формы соответствуют друг другу. Ингредиенты совместимы, расчеты сделаны верно, паспорт письменного контроля выписан верно. Правильность упаковки и оформления....

Studopedia.info - Студопедия - 2014-2024 год . (0.009 сек.) русская версия | украинская версия