Отговори на тема  [ 6 мнения ] 
Help 16F84a 
Автор Съобщение
Ранг: Минаващ
Ранг: Минаващ
Аватар

Регистриран на: Сря Дек 06, 2006 9:05 pm
Мнения: 92
Местоположение: София
Мнение Help 16F84a
Как да накарам пина RА4 да е като другите. Примерно командата
Код:
output_toggle(PIN_A4);
не работи. Доколкото прочетох в даташиита е свързан с таймер0. Аз използвам прекъсване по Таймер0 и яавно това пречи, но ми е необходим и този пин като изходен, а незнам как да го конфигурирам така че да заработи. OPTION_REG 4 и 5 как мога да ги променя в CCSa, с каква команда?


Пет Авг 31, 2007 4:48 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Чет Окт 07, 2004 1:22 pm
Мнения: 1949
Местоположение: София
Мнение 
A4 е отворен колектор, не може като другите изходи, може да се ползва по много начини, зависи от приложението, може да се сложи резистор към VCC например.... Конфигурира се като всеки друг пин, в TRIS-а на съответния порт, в случая TRISA.bit4...в CCS има поне 5 начина да го направиш това, най простия е:
Код:
#BYTE TRISA = 0x85 // някъде в хедъра на кода
#BIT A4 = TRISA.4
...
// някъде в инициализацията където ще се настройва като изход или вход
A4 = 0; // изход
...
А4 = 1; // вход


Пет Авг 31, 2007 5:04 pm
Профил
Ранг: Минаващ
Ранг: Минаващ
Аватар

Регистриран на: Сря Дек 06, 2006 9:05 pm
Мнения: 92
Местоположение: София
Мнение 
Конфигуриран е като изход. Целия портА са изходи. set_tris_A(0b00000000); Обаче точно на този пин се падна да мига един диод с output_toggle(PIN_A4); на 500мс - обаче не става. Не разбрах има ли начин да стане това?


Пет Авг 31, 2007 5:19 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Нед Окт 10, 2004 9:55 am
Мнения: 1718
Мнение :)
million написа:
Конфигуриран е като изход. Целия портА са изходи. set_tris_A(0b00000000); Обаче точно на този пин се падна да мига един диод с output_toggle(PIN_A4); на 500мс - обаче не става. Не разбрах има ли начин да стане това?

Диода как си го вързал , този изход е ОК(отворен колектор), трябва да свържеш диода от +5V към този извод през резистор 1кОм и трябва да работи :idea: :!:

_________________
Избийте баламите и тарикатите сами ще умрат!
Няма невъзможни работи - има много трудни работи!
----------------------------------------------------------------------------------
"Я в Москве с киркой уран найду, при такой повышенной зарплате" !


Пет Авг 31, 2007 5:45 pm
Профил
Ранг: Минаващ
Ранг: Минаващ
Аватар

Регистриран на: Сря Дек 06, 2006 9:05 pm
Мнения: 92
Местоположение: София
Мнение Re: :)
plameniv написа:
million написа:
Конфигуриран е като изход. Целия портА са изходи. set_tris_A(0b00000000); Обаче точно на този пин се падна да мига един диод с output_toggle(PIN_A4); на 500мс - обаче не става. Не разбрах има ли начин да стане това?

Диода как си го вързал , този изход е ОК(отворен колектор), трябва да свържеш диода от +5V към този извод през резистор 1кОм и трябва да работи :idea: :!:


Мда! ТАКА Работи! Досега беше през резистор към маса. Не че ми се изясни много,защо сега работи, но Благодаря Ви :) Цял ден се опитвам да разбера какво точно става, четох даташиита няколко пъти, но там пише непонятни за мен неща. Дано някой ден разбера!


Пет Авг 31, 2007 5:57 pm
Профил
Ранг: Новодошъл
Ранг: Новодошъл

Регистриран на: Вто Яну 09, 2007 12:05 am
Мнения: 130
Местоположение: Варна
Мнение 
Отворен колектор се нарича колектора на транзистор, който е свързан само към изход на дадена схема, а емитерът му е свързан към едно от захранващите напрежения (най-често минусът - т.нар. маса) (много рядко през резистор):

Изображение

Когато свържеш товара между отворения колектор и маса е нормално да не протича достатъчен ток независимо от това дали транзисторът е отпушен или не. Токът, който се втича в базата на транзистора, изтича почти изцяло през емитера му и за колектора не остава почти нищо (в случай на товар свързан между колектора и емитера (масата): Ib=Ie+Ic - първия закон на Кирхов - сумата от токовете в една възлова точка от електрическата верига е равна на нула). По-голямата част от тока протича през емитера, защото съпротивлението там е по-малко от сумата на съпротивлението на колектора и съпротивлението на товара - I=U/R - законът на Ом.


Специално за PIC16F84 е по-правилно да се каже "отворен дрейн", защото там транзисторът е полеви.

Някои предимства да се ползва отворен колектор:
* Възможност да се свързват изходите на няколко схеми заедно, като по този начин се извършва логическата операция ИЛИ.
* Възможност да се свърже товар със захранващо напрежение по-голямо от това на устройството (вж. фигурата по-горе - захранването на схемата е +5V, а на товара - +12V).

Изображение

Връзки:
http://en.wikipedia.org/wiki/Open_collector
http://en.wikipedia.org/wiki/Open_drain
http://www.acroname.com/robotics/info/c ... _clct.html
http://content.honeywell.com/sensing/pr ... apter4.pdf

_________________
Склонни сме да подценяваме важността на сложните неща

Принципът на предпазливостта срещу безразрешителността - кое е по-опасно?


Пет Авг 31, 2007 7:35 pm
Профил WWW
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 6 мнения ] 

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 3 госта


Вие не можете да пускате нови теми
Вие не можете да отговаряте на теми
Вие не можете да променяте собственото си мнение
Вие не можете да изтривате собствените си мнения
Вие не можете да прикачвате файл

Търсене:
Иди на:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.
Хостинг и Домейни