Régnez avec le SCEPTRE !

Postby romapolis » Wed Jun 16, 2010 12:00 am

Bonjour,

Je suis actuellement en électronique. Je débute dans la programmation microcontrôleur de type ARM. J'ai quelques soucis quant à l'utilisation de flashmagic. J'ai mis en place les cavaliers JP4 et JP5. Le PC reconnaît bien la carte électronique. J'ai donc essayé de vérifier la commmunication entre le Sceptre et l'ordinateur en faisant ISP->Read device signature dans flash magic. Un message d'erreur s'affiche me disant échec de l'étape 1, échec de l'autobaud. Pensez vous que cela vient d'un cavalier que j'aurais omis de brancher sur la carte ou bien d'un problème de driver vis-à-vis de la puce ftid.

Je vous remercie par avance pour vos réponses.
romapolis
 
Posts: 4
Joined: Mon Jan 20, 2014 7:53 am

Postby romapolis » Wed Jun 16, 2010 12:00 am

Ou sinon pourriez vous me dire les connexions que vous avez effectué sur la carte ainsi que les valeurs et options entrés sur flash magic (baud rate.....) Merci
romapolis
 
Posts: 4
Joined: Mon Jan 20, 2014 7:53 am

Postby hlaidet » Wed Jun 16, 2010 12:00 am

Bonjour Romapolis,

Voici la config que j'utilise:
JP2 fermé
JP3 fermé

JP4 2-3
JP5 2-3
JP15 ouvert
JP16 ouvert

JP8 ouvert
JP9 ouvert
JP10 ouvert

JP11 fermé (coté SD)
JP12 fermé

K6 1-2 (pour analogique)

Pour passer le micro en mode programmation, il faut:
- fermer JP1 et faire reset

Flash Magic:
select device: LPC2148
COM port: celui qui correspond à USB Serial Port dans le Gestionnaire de Périphériques
Baudrate 38400
Interface None(ISP)
Oscillator(MHz): 12

Erase all Flash: non coché
Erase blocs ...: coché
Verify ...: non coché
Fill unused...: non coché

Hex File: ...\preload.hex

Henri
hlaidet
 
Posts: 61
Joined: Thu Jan 02, 2014 10:44 am

Postby romapolis » Thu Jun 17, 2010 12:00 am

Ok merci. J'utilisais exactement la même configuration. Je me suis donc mis à mesurer les tensions d'alimentation du ARM 7 et là, j'ai mesuré 0,9v contrairement au 3,3 V théorique. J'ai donc refais des mesures au niveau de IC6 et je me suis aperçu que le composant était mal soudé ( des pattes n'étaient pas en contact avec la piste). J'ai resoudé et depuis ça fonctionne très bien, alors faites attention parce que vous pourriez perdre beaucoup de temps à cause d'une histoire de composant mal soudé.

Romain
romapolis
 
Posts: 4
Joined: Mon Jan 20, 2014 7:53 am

Postby romapolis » Fri Jun 25, 2010 12:00 am

Bonjour,

Je programme sous Visual express 2010. J'ai téléchargé la toolchain gcc afin de récupérer les headers manquants tels que reent.h. Mais j'ai un problème avec celui-ci. Visual m'affiche de nombreuses erreurs de syntaxe dans reent.h aprés avoir effectué le déboggage. Je ne sais pas si mon problème vient du header que j'utilise ou bien d'autres choses. Y a-t-il une âme charitable qui accepterait de me donner un lien permettant de récupérer une bonne version?

En vous remerciant d'avance.

Romapolis
romapolis
 
Posts: 4
Joined: Mon Jan 20, 2014 7:53 am

Postby hlaidet » Sat Jun 26, 2010 12:00 am

Bonjour,

Problème avec bluetooth btm222

Dans le but d'obtenir sur PC les valeurs de l'accéléromètre, j'ai mis en place une liaison client serveur.
Liaison bluetooth à 115200 bauds.
Le client (PC) émet 16 octets de requète.
Le serveur (sceptre) répond 48 octets (protocole).

Je m'attendais à une dizaine de ms pour un échange.
Mais SURPRISE, je trouve environ 150 ms.

Après la mise en place de mesure avec oscillo (voir "MesuresSceptre.pdf"),
on peut conclure:
- un échange 16+48 octets dure 150ms
- un échange 16+232 octets dure 50ms

je vais donc transporter 4 fois plus d'octets que nécessaire mais 3 fois plus vite.
étonnant non.

analyse personnelle:
- je pense que le btm222 attend un minimum d'octets reçus avant d'empaqueter bluetooth.
- un nombre plus important d'octets doit le forcer à empaqueter.

questions:
- y a-t-il des composants (bluetooth serial profil) plus véloces?
on voit que les 16 octets émis par le PC ont un délai de 7ms pour arriver à la cible.
- est-ce quelqu'un a des infos?

Cordialement
Henri
Attachments
MesuresSceptre.pdf
(159.74 KiB) Downloaded 61 times
hlaidet
 
Posts: 61
Joined: Thu Jan 02, 2014 10:44 am

Postby hlaidet » Sat Jul 03, 2010 12:00 am

Bonjour,

J'ai eu quelques problèmes avec I2C.

J'utilise "WinARM-20060606".

Avec ce compilateur, il faut donner l'attribut "volatile" à 2 variables dans "i2c.c" pour que ça fonctionne correctement.

##ligne 67## I2C_data_t * volatile I2C0_data_ptr = NULL;
##ligne 68## volatile bool_t I2C_ready = true;

De cette façon, la mise à jour de 2 expanders MCP23017 (un avec A et B en entrée et l'autre avec A et B en sortie) dure 250µs soit 2.5% du temps CPU si on le fait toutes les 10ms.

Remarque:
Ne pas appeler "I2C_io()" depuis une callback timer ( ex:"main_10ms_timer" ) car ça bloque.

Cordialement
Henri
hlaidet
 
Posts: 61
Joined: Thu Jan 02, 2014 10:44 am

Postby jack133 » Tue Jul 06, 2010 12:00 am

Bonjour à tous,

J'ai acheté il y a quelque temps le module USBProg. Est-il possible en le programmant en simulateur OpenOCD de debugger le sceptre par le JTAG ?

http://www.embedded-projects.net/index.php?page_id=177

Merci,

Stephane
jack133
 
Posts: 5
Joined: Mon Jan 20, 2014 7:53 am

Postby fablab » Mon Jul 19, 2010 12:00 am

Un coeur ARM ce n'est pas un pic, il faut bien se le dire.
meme si microchip pour ses derniers micro a pris un coeur 32 bits du concurent d'ARM, MIPS.

Je me laisserai bien tenter par cette carte mais PAS EN L'ETAT.
Documentations insuffisantes pour le néophyte ARM.
Il faudrai qu'elektor propose un OUVRAGE complet et precis d'au moins 300 pages, c'est la mode en ce moment ils proposent tout plein de livres.

ceci a été fait je crois pour la carte radio drm de burkhard kainka.
fab
fablab
 
Posts: 179
Joined: Fri Jan 17, 2014 4:42 pm

Postby hlaidet » Wed Aug 11, 2010 12:00 am

Bonjour,

J'ai un vrai problème avec ma carte (ARM7+Bluetooth).

Elle a fonctionné correctement pendant un mois et demi.

Puis elle a commencé à dérailler: le soft se plante.

Manifestation du plantage:
type1 - au reset rien affiché sur le terminal et pas d'activité sur la sortie LED
type2 - au reset affichage d'une partie du message d'accueil et stop (idem type1)
type3 - au reset affichage de caractères cabalistiques comme si le baudrate était mauvais et stop
type4 - au reset OK puis au bout de 1 à 5 minutes stop

J'ai pensé à un bug mais l'application de base "app_preload" avec ses librairies d'origine se plante aussi.
1 - programmation ( avec FlashMagic ) toujours OK
2 - reset : au début plantage une fois de temps en temps (1 fois sur 20)
3 - reset2: OK
********* ensuite augmentation des resets pour lancement OK

Tests:
Alim 3V3 correcte.
Le scope sur JP2 montre un baudrate qui varie d'une fois à l'autre.
Le scope sur le quartz montre du 12MHz présent.

La programmation se passant toujours bien, j'ai pensé à un problème de Flash.
Aussi, j'ai augmenté le nombre de cycles de MAMTIM (le datasheet n'est pas très précis).
"MAMTIM=3" est devenu "MAMTIM=4" dans "target.c".
Et miracle, tout a refonctionné.

Mais quelques jours plus tard (et plusieurs programmations de Flash), retour case départ.
Meme chose.
Cette fois, j'ai changé la fréquence processeur
"#define Fcclk (Fosc*5)" est devenu "#define Fcclk (Fosc*4)" dans "target.h"
soit 48MHz à la place de 60MHz.

Maintenant, ça fonctionne (à 48MHz). Mais jusqu'à quand?

Est-ce que quelqu'un a une idée?


Cordialement
Henri
hlaidet
 
Posts: 61
Joined: Thu Jan 02, 2014 10:44 am

PreviousNext

Return to SCEPTRE (03-2010)

Who is online

Users browsing this forum: No registered users and 1 guest