Page 2 of 7

Re: K2000 : Réalisation, programmation, apprentissage ...

Posted: 21 Sep 2011, 20:33
by Termi87
Ah yhéé, tu me filera le lien vers ton post :) !

Dis toi bien que moi j'en suis pas du tout à ton niveau :p , donc quand tu dis :
schizophrene wrote:3 lignes * 5 colonnes.
Je l'ai déjà lu mais je ne sais strictement pas ce que cela veux dire et comment on le réalise.

Tu m'a l'air d'avoir beaucoup d'animation, j'ai hâte de découvrir ton post.

Pour répondre à ta question, non je n'avance pas. Pour te donner un ordre d'idée, je travail dessus de 0 à 5h par mois dessus :( (parce que je suis rarement chez moi, et que je n'arrives pas à trouver plusieurs heures d'affiler pour m'y consacrer pleinement). Actuellement, je monte un home cinéma complet, donc j'ai des notices à lire de malade (ampli), et j'installe tout, ce sera fini la semaine prochaine...

Tu seras informé de toute façon, de toute évolution sur mon avancement ;) .
Bonne soirée :) !

Re: K2000 : Réalisation, programmation, apprentissage ...

Posted: 21 Sep 2011, 20:48
by schizophrene
Quand je dis 3 lignes * 5 colonnes, je n'ai pas fait de matrice hein! Cela sera la v.2.0 de mon projet (avant la v.3.0: leds RGB).
Mais comme j'avais un TLC5940 dans le projet, et ne souhaitant pas faire compliqué pour l'instant, chaque sortie est totalement indépendante des autres (seulement dépendantes du code que j'écris).

Re: K2000 : Réalisation, programmation, apprentissage ...

Posted: 21 Sep 2011, 20:57
by Termi87
Ok. C'était quoi le but de ton projet toi déjà ?

Re: K2000 : Réalisation, programmation, apprentissage ...

Posted: 21 Sep 2011, 21:30
by schizophrene
Moduler l'intensité lumineuse de 16 leds à la base ^^

Ça s'est beaucoup transformé depuis, mais j'arrive à la finalité avec la programmation. Il me restera le montage ensuite :)

Re: K2000 : Réalisation, programmation, apprentissage ...

Posted: 08 Oct 2011, 12:52
by Termi87
Salut,

voici quelques infos en plus :
Si on reprend la vidéo de l'animation 16 led, on peut constater que 2 groupes de led restent partiellement allumés... ça fait tâche mais je ne vois vraiment si c'est un problème de programme ou matériel...


Voici le code pour cette animation 16led :

Code: Select all

#pragma CHIP 16F690 //équivalent du #include <16F690.h>
#define T1 60  //Tempo//Définir que quand on écrit delay_ms(T1); c'est comme si on marquait
				//la valeur de tempo en ms
#define T2 50

void prog1(void); 	// Création d'une fonction programme
void prog2(void);
int masque0,masqueB,masqueC,masque2,masque3,masque4,masque5,masque6,masque7;
char cptA1,cptA2,cpt1;
char cptB1,cptB2,cpt2;
char cptC1,cptC2,cpt_cycle,cptG;
char max_cptA,max_cptB,max_cptC;  //Compteurs désincrémenté pour réduire le nb de cycle à chaque cycle

void delay_ms( uns16 millisec)
	// Delays a multiple of 1 milliseconds at 4 MHz
	// using the TMR0 timer
{
    char next = 0;

    OPTION = 2; // prescaler divide TMR0 rate by 8
    TMR0 = 2;  // deduct 2*8 fixed instruction cycles delay
    do  {
        next += 125;
        clrwdt();  // needed only if watchdog is enabled
        while (TMR0 != next)   // 125 * 8 = 1000 (= 1 ms) 
            ;
    } while ( -- millisec != 0);
}    
/*----------------------------------------
Ce programme fait du bit à bit sur 16 LED => Fonctionne
------------------------------------------*/

void main(void)
{	
	ADCON0 = 0x00;//permet de desactiver les comparateurs
	CM1CON0 =0x00; //permet de desactiver les comparateurs
	CM2CON0 =0x00;
	TRISA = 0b00001000; //RA3 reste en input
	TRISB = 0x00;
	TRISC = 0x00;//TRISC=0 configure les port C en output, 1 en input.
/*Pour Ampilement :
	masque0=0b00000000; 
	masqueC=0b10000000; 
	masqueB=0b10000000; 
	masque2=0b11100000; 
	masque3=0b11110000; 
	masque4=0b11111000; 
	masque5=0b11111100;
	masque6=0b11111110;
	masque7=0b11111111;
	max_cptA= ;
	max_cptB=2;
	max_cptC=7;
*/
	while(1)  // Le while(1) toujours dans le main
	{
		prog1(); 	// 16 Led Bit à bit (Fonctionne)
//		prog2();	// Ampilement de 16 led (avec masquage) (PORTA et PORTB et PORTC) (En développement)
	}
}/* pas de code apres cette acolade à part pour les fonction et autre a voir par la suite */

//Aide chiffrage bit : 1=2=4=8=16=32=64=128

//-----------------BIT A BIT DE 16 LED----------
void prog1()

{ // ALLEE---------------
	PORTB=0x00; PORTC=0x00; PORTA=0x00; 
	delay_ms(T1);
  //PORTA----------------
	cptA1=0;cptA2=1;
	PORTA=0x01;							//RA0
	delay_ms(T1);
	for(cptA1=0;cptA1<2;cptA1++)		//RA1/RA2
		{
		cptA2=cptA2<<1;
		PORTA=cptA2;
		delay_ms(T1);
		}
	cptA2=((cptA2*2)+8);	cptA1=0;	//RA3 est Zappé (x2) =>bit 8, car Input exclusivement
										//+8 pour sauter RA4 qu'on active juste après
										//Permet de gagner un cycle dans le "for"
	PORTA=0x10;							//On recommence sur RA4 soit bit 16
	delay_ms(T1);						//1=2=4=8= 16=32=64=128
	for(cptA1=0;cptA1<1;cptA1++)		//RA5
		{
		cptA2=cptA2<<1;
		PORTA=cptA2;
		delay_ms(T1);
		}

	PORTA=0x00;
	
 //PORTB-----------------
 	cptB1=0;cptB2=16;
 	PORTB=cptB2;						//RB4
	delay_ms(T1);
	for(cptB1=0;cptB1<2;cptB1++)		//RB5/RB6/ (pas RB7)
		{
		cptB2=cptB2<<1;
		PORTB=cptB2;
		delay_ms(T1);
		}
	PORTB=0x00;
 //PORTC-----------------
 	cptC1=0;cptC2=1;
 	PORTC=0x01;							//RC0
	delay_ms(T1);
	for(cptC1=0;cptC1<7;cptC1++)		//RC1...RC7
		{
		cptC2=cptC2<<1;
		PORTC=cptC2;
		delay_ms(T1);
		}
	
 //RETOUR--------------
  //PORTC-----------------
 	cptC1=0;cptC2=128; 	//1=2=4=8=16=32=64=128
 	PORTC=0x80;
	delay_ms(T1);
	for(cptC1=0;cptC1<7;cptC1++)
		{
		cptC2=cptC2>>1;
		PORTC=cptC2;
		delay_ms(T1);
		}
	PORTC=0x00;
  //PORTB-----------------
 	cptB1=0;cptB2=64;
 	PORTB=cptB2;
	delay_ms(T1);
	for(cptB1=0;cptB1<2;cptB1++)
		{
		cptB2=cptB2>>1;
		PORTB=cptB2;
		delay_ms(T1);
		}
	PORTB=0x00;
  //PORTA----------------
	cptA1=0;cptA2=32;
	PORTA=0x20;
	delay_ms(T1);	
	for(cptA1=0;cptA1<1;cptA1++)
		{
		cptA2=cptA2>>1;
		PORTA=cptA2;
		delay_ms(T1);
		}
		
	cptA1=0;cptA2=4;
	PORTA=0x04;
	delay_ms(T1);
	for(cptA1=0;cptA1<2;cptA1++)
		{
		cptA2=cptA2>>1;
		PORTA=cptA2;
		delay_ms(T1);
		}
}
Les led et sorties sont utilisées comme suis :
Led 1 sur RA0 puis RA1,RA2,RA4,RA5, puis RB4,RB5,RB6, puis RC0 ... jusqu'à RC7.

Autre phénomène bizarre, si RA4 et RA5 s'allument donc maintenant bien, quand je fais la simulation de l'animation, dans le logiciel ISIS, ces derniers ne fonctionnent pas (que ce soit au niveau de la led ... mais c'est normal puisque la sortie au niveau du PIC ne s'allume pas elle non plus...bizarre)


A bientôt :)

Re: K2000 : Réalisation, programmation, apprentissage ...

Posted: 08 Oct 2011, 13:05
by schizophrene
Les joies de la simulation qui marche, mais le montage réel qui ne fonctionne pas... ^^

Je dois t'avouer que le code pour cette animation est énorme (et que je ne l'ai pas lu ^^)!
J'en reviens toujours à Arduino: 20 lignes max pour le programme entier, comprenant l'animation.. :)

Re: K2000 : Réalisation, programmation, apprentissage ...

Posted: 08 Oct 2011, 14:59
by Termi87
schizophrene wrote:Les joies de la simulation qui marche, mais le montage réel qui ne fonctionne pas... ^^
C'est l'inverse moi :mrgreen: .
schizophrene wrote:J'en reviens toujours à Arduino: 20 lignes max pour le programme entier, comprenant l'animation.. :)
Tu me vends du rêve là ^^ "soupir"

Re: K2000 : Réalisation, programmation, apprentissage ...

Posted: 08 Oct 2011, 17:44
by zeltron
Bâ,

pour éviter les galère des µP, des µC , et de la logique programmée , qui marche en simu, et ne marche jamais en reel ...Ou qui marche en reel, mais s'avère obsolète en 3 ans, ou s'avère indépannable , et bonne à jeter directement à la benne à DEEE ...dès lors que c'est grillé ou que ça a perdu la boule suite à une surtension d'origine atomsphérique un jour d' orage , ou a une mauvaise utilisation par des gosses, a un vieillissement prématuré de composants, ou une fausse manip avec un outil qui a rippé entre deux patte d'un microprocesseur, par exemple ...
Faites comme moi : que de la logique câblée, avec des portes logiques, des compteurs, et des composants discrets, diodes, transistors , pas besoin de logiciel, pas d'outil de programmation, pas de truc qui marche à l'écran de son ordi, et jamais dans la réalitée ...Et en prime l'avantage d'un montage certe plus volumineux et compliqué, mais scindables en sous éléments qui, pris isolément sont simples, et qui a le gros mérite d' être aisé a dépanner même apres 30 ans de sevice !

(les µC d'aujourd'hui vous ne les trouverez plus nulle part dans 30 ans , les logiciels et outils informatiques utilisé seront depuis longtemps périmé ou devenus illisibles ou incompatibles dans 30 ans, tandis qu'une diode ou un tranistor on en trouvera toujours dans 30 ans , ou un équivalent ...)

P/S/Z

Re: K2000 : Réalisation, programmation, apprentissage ...

Posted: 08 Oct 2011, 17:52
by schizophrene
zeltron wrote:Bâ,

pour éviter les galère des µP, des µC , et de la logique programmée , qui marche en simu, et ne marche jamais en reel ...Ou qui marche en reel, mais s'avère obsolète en 3 ans, ou s'avère indépannable...
Faites comme moi : que de la logique câblée, avec des portes logiques, des compteurs, et des composants discrets, diodes, transistors , pas besoin de logiciel, pas d'outil de programmation, pas de truc qui marche à l'écran de son ordi, et jamais dans la réalitée ...Et en prime l'avantage d'un montage certe plus volumineux et compliqué, mais scindables en sous éléments qui, pris isolément sont simples, et qui a le gros mérite d' être aisé a dépanner même apres 30 ans de sevice !

(les µC d'aujourd'hui vous ne les trouverez plus nulle part dans 30 ans , les logiciels et outils informatiques utilisé seront depuis longtemps périmé ou devenus illisibles ou incompatibles dans 30 ans, tandis qu'une diode ou un tranistor on en trouvera toujours dans 30 ans , ou un équivalent ...)

P/S/Z
Belle analyse zeltron, mais les jeunes d'aujourd'hui (dont je fais partie) préfèrent en général tout ce qui est nouveau et 'geek', donc les µC :)
Certes, le PIC ou l'ATmega que nous utilisons n'existeront sûrement plus, mais d'ici là il y aura de nouveaux µC et platines de développement.
Et comme tu le dis si bien, un montage tout logique câblée sera plus volumineux et compliqué. L'avantage du µC finalement, c'est bien l'encombrement minimal ainsi que la facilité de mise en oeuvre.

Mais je respecte tout a fait ta vision des choses, il y aura toujours de l'électronique analogique! :)

Re: K2000 : Réalisation, programmation, apprentissage ...

Posted: 08 Oct 2011, 19:27
by zeltron
Bonjour,

le mot "geek" qualifie en principe toujours une personne, féru d'informatique et de numérique et ayant un certain état d'esprit (auquel je suis réfractaire !) , et non le matériel dont elle est férue (comme on serait tenté de le croire ici )

Quand aux µC et µP actuels, ils seront vite obsolète (un Z80 ou un 6502 prète à sourir de nos jours ...et c'est devenu des composants obsolète qu'on ne trouve plus que chez quelques collectionneurs de microinformatique des années 1980 que plus personne ne tient en stock et ne commercialise ) ... Et si certe, dans le futur , on sortira de nouveaux µC et µP , et de nouvelles platines de développement et nouveaux logiciels, évidemment, il a fort a parier que le nouveau logiciel ne sera pas compatible avec l'ancien , et que le matériel n'aura pas les mêmes caractéristiques ni le même brochage , obligeant a changer toute l'électronique connexe et a re-router un nouveau circuit imprimé, rien que pour emm**der le monde !

Tandis que, par exemple , un bon vieux modulateur de lumière des années 1980 , analogique et sans composant programmable, c'est simple et on n'est pas enquiquiné avec, et quand bien même un transbar ou un triac est flingué , il suffit de le remplacer par le même ou un équivalent (archi courant) et de refaire 3 soudures ...Et c'est reparti pour des lustres !
Et quand le montage est plus vieux encore et qu'il est équipé de tubes électroniques (des lampes de radio) ça peut être encore plus simple , pas besoin de fer à souder, les lampes sont sur supports, et parfois même les condos sont boulonné, on trouve encore des équivalents, et ça se dépanne avec juste une pince et un tournevis !
Bon, j'avoue, là, que cette technologie est franchement obsolète et trop énergivore , et que si c'est encore raisonnable pour un ampli de gratte qu'il soit à lampes (c'est les meilleurs !) ceux à tubes sont déja bien lourds et énérgivores et pourrais faire chauffage d'appoint si on les allument sans mettre une guitare au bout ...J'avoue que, pour un K2000, équipé de lampes radio des années 30 , ça va occupper une pièce entière et consommer autant qu'une douzaines de radiateurs électriques ! (c'est EDF ...ou Areva ...ou Poweo ...qui vont être content :mrgreen: )

P/S/Z