układ zlutowany już po małych przejściach 2 razy padły mi tranzystory ale mam nadzieję że to już się nie powtórzy.
Mam natomiast problem z procesorem ATtiny26 dziwna sprawa bo na porcie A stan Zerowy czyli logiczne 0 wynosi około 2.5 V napięcie to jest niestety na pograniczu wykrywalności bramek NOR i układ wariuje na wyjściu podaje różne sygnały lub załącza 3 lub więcej tranzystorów itp.
Port B zachowuje się prawidłowo.
układ jest podłączony tak ....
wszystkie kondensatory obok procesora 100nF
AVCC podłączone do VCC rezystorem 100 Ω
rezystory które wychodzą na bramki NOR są po 1kΩ
Aref podłączone do masy poprzez kondensator 100nF
te różowe układy to PC817 zwierają porty do masy.
Początkowo myślałem że może bramki NOR coś szwankują wyjąłem je został sam procek problem dalej pozostał na płytce nie ma żadnych zwarć sprawdzałem kilkakrotnie po wymianie procesora na inny problem dalej jest ten sam.
Kod źródłowy to....
#include <avr/io.h>
#define STAN_1 PORTA = 0x5E
#define STAN_2 PORTA = 0x3E
#define STAN_3 PORTA = 0x3D
#define STAN_4 PORTA = 0x6D
#define STAN_5 PORTA = 0x6B
#define STAN_6 PORTA = 0x5B
#define STAN_0 PORTA = 0xFF
// Program główny
int main(void)
{
// konfiguracja portów I/O
DDRB = 0x08;
DDRA = 0xFF;
PORTB = 0x47;
PORTA = 0x00;
// Pętla nieskoczona
while(1)
{
if( bit_is_set(PINB, PB0) && bit_is_clear(PINB, PB1) && bit_is_clear(PINB, PB2)) //011
STAN_1;
if( bit_is_set(PINB, PB0) && bit_is_clear(PINB, PB1) && bit_is_set(PINB, PB2)) //010
STAN_2;
if( bit_is_clear(PINB, PB0) && bit_is_clear(PINB, PB1) && bit_is_set(PINB, PB2)) //110
STAN_3;
if( bit_is_clear(PINB, PB0) && bit_is_set(PINB, PB1) && bit_is_set(PINB, PB2)) //100
STAN_4;
if( bit_is_clear(PINB, PB0) && bit_is_set(PINB, PB1) && bit_is_clear(PINB, PB2)) //101
STAN_5;
if( bit_is_set(PINB, PB0) && bit_is_set(PINB, PB1) && bit_is_clear(PINB, PB2)) //001
STAN_6;
else
STAN_0;
}// koniec pętli nieskończonej
return 0;
}
Fusebity są oryginalnie ustawione nie zmieniałem ich.
czy możliwe żeby źle skompilowało lub źle programował programator?
Proszę umieszczać listingi programów w znacznikach "Code". [c_p]