Pages: 1 [2] 3 4 5   Go Down
Author Topic: conseil matériel  (Read 5390 times)
0 Members and 1 Guest are viewing this topic.
France
Offline Offline
Faraday Member
**
Karma: 52
Posts: 5341
Arduino Hacker
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

sisi j'ai lu mais trop tard smiley-mr-green bon je viens de faire le branchement sur les bons pins mais çà change rien, aucun affichage sur la télé.
Tu as quoi comme TV ?
Et tu utilise quoi comme valeur de résistance actuellment (celle du schéma tv-out ou ce que tu as pu trouvé sous la main ?)
Logged

Des news, des tuto et plein de bonne chose sur http://skyduino.wordpress.com !

Offline Offline
Jr. Member
**
Karma: 0
Posts: 54
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

j'ai une tv led samsung , en résistance j'utilise une de 1k ohm et une de 330ohm, j'ai bien 75 ohm entre signal et ground sur mon cable rca qui va a la télé.

merci pour ton aide
Logged

France
Offline Offline
Faraday Member
**
Karma: 52
Posts: 5341
Arduino Hacker
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

j'ai une tv led samsung , en résistance j'utilise une de 1k ohm et une de 330ohm, j'ai bien 75 ohm entre signal et ground sur mon cable rca qui va a la télé.
Essaye 470 ohms comme dans le schéma officiel, 330 ohms ça me semble un peu léger.
Logged

Des news, des tuto et plein de bonne chose sur http://skyduino.wordpress.com !

Offline Offline
Jr. Member
**
Karma: 0
Posts: 54
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

je viens de tester avec une de 470 ohm, essayer la librairie ntsc et pal, aucun changement toujours pas d'affichage
Logged

France
Offline Offline
Faraday Member
**
Karma: 52
Posts: 5341
Arduino Hacker
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

je viens de tester avec une de 470 ohm, essayer la librairie ntsc et pal, aucun changement toujours pas d'affichage
Tu peut faire un photo de ton câblage ?

Tu est sûr d'avoir la derniére version de tv-out ?
Ta carte est fonctionnelle ? (le sketch blink marche par exemple ?)

Ya un truc pas nette dans ton histoire smiley-wink
Logged

Des news, des tuto et plein de bonne chose sur http://skyduino.wordpress.com !

Offline Offline
Jr. Member
**
Karma: 0
Posts: 54
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

la derniere version ne fonctionne pas, erreur lors de la compilation, j'ai essayer la v1, v1 beta et v3.

le blink fonctionne, test led avec timer fonctionne aussi.

pas de photo désolé, j'ai fait un montage sur plaque d'essai a souder bornes sorties résistances souder ensemble sur le signal rca. sur la 470 ohm je suis brancher sur la mega sur le pwm 11, celle de 1k sur pin 29. et ground rca sur le ground au niveau des pins digital (j'en ai essayer d'autres).

au niveau de l'ide j'ai essayer la version 1.01, v022 et v023.

Logged

France
Offline Offline
Faraday Member
**
Karma: 52
Posts: 5341
Arduino Hacker
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

la derniere version ne fonctionne pas, erreur lors de la compilation, j'ai essayer la v1, v1 beta et v3.
Tu peut copier / coller l'erreur ?
Logged

Des news, des tuto et plein de bonne chose sur http://skyduino.wordpress.com !

Offline Offline
Jr. Member
**
Karma: 0
Posts: 54
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset



voici les erreurs avec la v5.91:

TVout.cpp: In member function 'void TVout::render_setup(uint8_t)':
TVout.cpp:729: error: '_VID_DDR' was not declared in this scope
TVout.cpp:729: error: '_VID_PIN' was not declared in this scope
TVout.cpp:730: error: '_SYNC_DDR' was not declared in this scope
TVout.cpp:730: error: '_SYNC_PIN' was not declared in this scope
TVout.cpp:731: error: '_VID_PORT' was not declared in this scope
TVout.cpp:732: error: '_SYNC_PORT' was not declared in this scope
Logged

Offline Offline
Jr. Member
**
Karma: 0
Posts: 54
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

c'est bon j'ai réussi!!

j'ai pris la dernière version est corrigé tout les défauts, beaucoup de défauts dans les onglets ***.h fichier mal spécifié pour la plus part.

merci skywodd pour ton aide.

je vais enfin avancer...
Logged

France
Offline Offline
Faraday Member
**
Karma: 52
Posts: 5341
Arduino Hacker
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Tient on doit pas avoir la même version R5.91 alors.
Moi avec ma version (téléchargé directement depuis le gestion de version mercurial du google-code) j'ai tout qui compile correctement ...
Logged

Des news, des tuto et plein de bonne chose sur http://skyduino.wordpress.com !

Offline Offline
Jr. Member
**
Karma: 0
Posts: 54
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

je l'ai pris sur code.google.... le problème c'est que la compilation appelle des fichiers via #include .... mais la syntaxe est pas bonne

ex: #include <TVout.h> ne fonctionne pas il faut la remplacer par #include"TVout.h"

bon sinon j'ai un peu avancer depuis hier j'ai réussi a integrer mon propre bitmap d'intro et changer les differentes lignes affichés.

mais là je bloque pour afficher la valeur de pression turbo.

je me suis servis de ce topic: http://www.seatcupra.net/forums/showthread.php?t=348592

dans le void setup j'ai inscrusté ce code

Code:
//turbo jauge
  TV.write("TURBO"); // “MAP:” at top right of display
  TV.print(boost);
  TV.write("BAR"); // “PSI” three digits to the right of “MAP:”
  TV.write(254); // SerLCD instruction
  TV.write(192); // “Peak:” at bottom right of display
  TV.print("PEAK");
  TV.write(254); // SerLCD instruction
  TV.write(204); // “PSI” left of peakboost
  TV.print("PSI");

et dans le void loop celui-ci:

Code:
void loop()
{
mapval= analogRead(mapsen); //Reads the MAP sensor raw value on analog port 0
boost = (mapval/1.9); //Converts raw MAP value to PSI and accounts for atomospheric pressure

if (boost > peakboost) // If current boost is higher than peak, store in peak memory
{
peakboost = boost ;  // Store current boost in peak memory
}

if (peakboost <= 0) // Shifts peak value 1 character to the right if < 10PSI
{
TV.write(254); // SerLCD instruction
TV.write(197); // Peak display after “Peak:”
TV.print(peakboost,1); //peak to 1 decimal
}
else
{
TV.write(254); // SerLCD instruction
TV.write(197); // Go to position 22
TV.write(32); // Load clear bit at position 22
TV.write(254); // SerLCD instruction
TV.write(198); // Go to position 22
TV.write(32); // Load clear bit at position 23
TV.write(254); // SerLCD instruction
TV.write(199); // Go to position 22
TV.write(32); // Load clear bit at position 24
TV.write(254); // SerLCD instruction
TV.write(200); // Go to position 22
TV.write(32); // Load clear bit at position 25
TV.write(254); // SerLCD instruction
TV.write(201); // Go to position 22
TV.write(32); // Load clear bit at position 26
TV.write(254); // SerLCD instruction
TV.write(202); // Go to position 22
TV.write(32); // Load clear bit at position 26
TV.write(254); // SerLCD instruction
TV.write(198); // Peak display after “Peak:”
TV.print(peakboost,1); //peak to 1 decimal
}
if (boost <= 0) //Shifts the MAP value 1 character to the right if < 10PSI
{
TV.write(254); // SerLCD instruction
TV.write(133); // boost after “MAP:”
TV.print(boost,1); //boost to 1 decimal
}
else
{
TV.write(254); // SerLCD instruction
TV.write(133); // Go to position 6
TV.write(32); // Load clear bit at position 4
TV.write(254); // SerLCD instruction
TV.write(134); // Go to position 7
TV.write(32); // Load clear bit at position 4
TV.write(254); // SerLCD instruction
TV.write(135); // Go to position 8
TV.write(32); // Load clear bit at position 4
TV.write(254); // SerLCD instruction
TV.write(136); // Go to position 9
TV.write(32); // Load clear bit at position 4
TV.write(254); // SerLCD instruction
TV.write(137); // Go to position 10
TV.write(32); // Load clear bit at position 4
TV.write(254); // SerLCD instruction
TV.write(138); // Go to position 11
TV.write(32); // Load clear bit at position 4
TV.write(254); // SerLCD instruction
TV.write(134); // boost after “MAP:”
TV.print(boost,1); // boost to one decimal
}
delay(1000); // prevents LCD display from ghosting. Lower number refreshes faster, higher number has less ghosting on slow LCD’s
}

void preset() //peak reset if D2 goes low
{
peakboost = boost; //sets peakboost to current boost reading, resetting the peak memory
}

je vois que des pixels défilé sur l'écran.... j'ai un peu de mal a transcrire le scipt lcd avec le script TVout
Logged

France
Offline Offline
Faraday Member
**
Karma: 52
Posts: 5341
Arduino Hacker
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Attend tu est en train de tous mélanger !?

Code:
TV.write(254); // SerLCD instruction
TV.xxx c'est un objet TV-out ou un objet SoftwareSerial ?

Dans tout les cas :
Code:
TV.write("TURBO");Q
TV.print(boost);
-> FAUX

.write(x) -> envoi un octet brute de forme (valeur binaire 0~255)
.print(x) -> affiche une valeur sous forme de caractére

Donc "quelqueChoseEntreDoubleQuote" -> .print(x) et non .write(x) !
Logged

Des news, des tuto et plein de bonne chose sur http://skyduino.wordpress.com !

Offline Offline
Jr. Member
**
Karma: 0
Posts: 54
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

oui j'ai mélangé le code, en fin de compte TV.write je n'en ai pas besoin.

dans le code du gars il met serial.write pour envoyer une instruction au LCD, tandis que moi je n'ai pas d'intruction a envoyé j'ai juste a utiliser le code TV.print et println.

je suis dans le bon?




Logged

France
Offline Offline
Faraday Member
**
Karma: 52
Posts: 5341
Arduino Hacker
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

oui j'ai mélangé le code, en fin de compte TV.write je n'en ai pas besoin.
dans le code du gars il met serial.write pour envoyer une instruction au LCD, tandis que moi je n'ai pas d'intruction a envoyé j'ai juste a utiliser le code TV.print et println.

je suis dans le bon?
C'est bien ce que je pensai tu t'étais mélangé les pinceaux smiley-mr-green

Tu ne travaille pas (plus) avec un Serlcd, donc pas de commande spécial ou autre.
Tu as juste à utiliser TV.print pour afficher ton texte et tes valeurs c'est tout smiley-wink
Logged

Des news, des tuto et plein de bonne chose sur http://skyduino.wordpress.com !

Offline Offline
Jr. Member
**
Karma: 0
Posts: 54
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

un peu d'avancement aujourd'hui mais c'est pas encore çà mais je touche au but.

pour commencer le code

Code:
#include "TVout.h"
#include "fontALL.h"
TVout TV;

int capteurT = 3; // capteur pression turbo connecté broche 3
int valeur = 0; //variable de type int pour stocker la mesure
float pression = 0;

void setup()
{
  TV.begin(NTSC,120,96);
  TV.select_font(font6x8);
  TV.println("test jauge turbo");
  TV.delay(5000);
  TV.println("BY ROCKS");
  TV.delay(5000);
  TV.clear_screen();
  
}

void loop()
{
  valeur = analogRead(capteurT); //lit la valeur de la tension
  pression = (valeur/1,9); //convertit la tension en valeur de pression
  
  TV.select_font(font6x8);
  TV.print("TURBO = ");
  TV.print(pression);
  
}
  

erreurs dans le calcul et la boucle, si je met TV.print("TURBO = ") et TV.print(pression) je vois le mot turbo et la valeur qui défile sur tout l'écran, mais il faut deviner que c'est marqué...



si je met TV.println("TURBO = ") et TV.println(pression) j'obtient une dizaine de ligne avec turbo et la valeur comme ceci:



pour le calcul j'ai un peu de mal a comprendre si je passe "valeur" en int ou float j'ai aucun changement, j'ai vu sur 2 codes qu'il divisait la valeur par 1023, si la valeur  serait toujours a 5v ok mais là c'est pas mon cas, je pense qu'il faudrait diviser la valeur par 210 (pour 5v valeur affiché 1023, pour 4v valeur affiché 830, pour 3v valeur affiché 630) donc si je divise ma valeur affiché par 210 j'obtiendrais la tension en entrée me restera juste après a rediviser par 1.9 pour avoir ma pression.
« Last Edit: July 23, 2012, 08:25:00 pm by antho59 » Logged

Pages: 1 [2] 3 4 5   Go Up
Jump to: