Я немного её изменил -добавил кнопку , между PB0 и землей.Программы залитые в мк работают черт де как,автор схемы грешит на то что я использовал нестабилизированный источник питания. Вот его название MW ES18E05-P1J и дока к нему http://www.megachip.ru/pdf/MW/ES18E.pdf Где там написано что он нестабилизированный ? Цитирую Features :
Universal AC input / Full range 2 pole EURO plug Class power (without earth pin) Full output 3~48V safety approval Protections: Short circuit / Over load / Over voltage RCC control circuit and regulated Pass LPS for 9~48V output Fully enclosed plastic case LED for power on Approvals: TUV / CCC / CB / CE
SPECIFICATION:
VOLTAGE TOLERANCE Note.4 5.0% LINE REGULATION Note.5 1.0% LOAD REGULATION Note.6 5.0%
При подключении через программатор AvrISP mk2 он передает информацию о питании в AVR Studio, она бывает 5.2-5.4 вольт.
Нет, он просто правил не читал про размещение картинок.
А светодиоды обязательно надо на ноги программирования повесить - иначе секаса не будет совсем ни какого.
Добавлено спустя 3 минуты 27 секунд:
Rolex писал(а):Программы залитые в мк работают черт де как
А программы то хороши ? в PROTEUS хорошо работают ? Правильно ?
Добавлено спустя 2 минуты 20 секунд: БП конечно штука загадочная. Лучше 9-15 вольт подавать на стабилиазтор установленый на самой плате с МК.
Добавлено спустя 9 минут 34 секунды: Удобно от USB питать - розеточку USB-B поставить на платку или мини или шнурок обрезать и провода питания к плате подпаять.
Добавлено спустя 4 минуты 59 секунд: Для вашего блока питания советую поставить по "+" питания быстрый диод 1N4148 или mur или her или типа того и параллельно конденсатору С4 электролит на 47-100 мкФ примерно. И резисторы у светодиодов до 1 кОм увеличить временно.
1)Что значит повесить светодиоды на ноги программирования ? 2)Питание только что пробовал подавать с самосборного источника;точно стабилизированный,не помню на какой микросхеме собирал,разве что отечественная была.
Вот пример простейшей программы.При нажатой кнопке диоды горят,при отжатой погашены.Программа отлажена в симуляторе AVR Studio , не так уж она и крута чтобы с протеусом связываться. .include "tn2313def.inc"
.def temp =r16 .def mark26 =r17 .def count15 =r18
rjmp Init
Delay : ;подпрограмма задержки в 0.1 прибл секунду ,кварц 4 МГЦ in temp,TCNT0 cp mark26,temp brne Delay subi mark26,-26 dec count15 brne Delay ldi mark26,26 ldi count15,15 ret
Init: ldi temp ,LOW (RAMEND) out SPL ,temp
ldi temp,0b00000101 ;настраиваем таймер out TCCR0,temp
ldi temp,0b11111110 ; PB0 вход,остальные выходы out DDRB, temp ser temp ; PD0-6 выходы,не используются out DDRD, temp
ldi temp,0b00000001 ;выходы обнуляем,на вход подтягивающий резистор out PortB, temp clr temp ;PD0-6 выходы с 0 потенциалом out PortD, temp
ldi mark26,26 ldi count15,15 Start: sbis PinB , 0 ;если кнопка нажата-зажигаем светодиоды,иначе гасим их в LedOff rjmp LedOff rcall Delay ldi temp,0b11110001 ;0-бит подтягивающий резистор на вход,последние 4-диоды out PortB, temp rjmp Start LedOff: ldi temp,0b00000001 out PortB, temp rjmp Start
А может я дико торможу и ошибаюсь в основах.Когда ножку МК настраиваю как ВХОД и включаю подтягивающий резистор то что будет показывать PinX при замыкании её через нажатие кнопки на землю?я полагал что единицу,а при размыкании 0.Но то как работает программа указывает что наоборот.
у тебя неразбериха с коментами, а прога написана верно... просто перепутано: ты пишешь в коментах зажечь, а сам гасишь светики... советую Мортона почитать, раз на асме взялся...
Да,я и читаю Мортона,неразбериха из за того что с какого то бодуна решил что при замыкании на землю Pin показывает 1 а при размыкании 0. Оттого что так и не понял до конца как работает подтягивающий резистор.