Bienvenue aux nouveaux arrivants sur FantasPic !
- Pensez à lire les règles durant votre visite, il n'y en a pas beaucoup, mais encore faut-il les respecter .
- N’hésitez pas à faire des remarques et/ou suggestions sur le Forum, dans le but de l'améliorer et de rendre vos prochaines visites plus agréables.
- Vous pouvez regarder votre "panneau de l'utilisateur" afin de configurer vos préférences.
- Un passage par "l'utilisation du forum" est recommandé pour connaître les fonctionnalités du forum.
--- L’équipe FantasPic ---
- Pensez à lire les règles durant votre visite, il n'y en a pas beaucoup, mais encore faut-il les respecter .
- N’hésitez pas à faire des remarques et/ou suggestions sur le Forum, dans le but de l'améliorer et de rendre vos prochaines visites plus agréables.
- Vous pouvez regarder votre "panneau de l'utilisateur" afin de configurer vos préférences.
- Un passage par "l'utilisation du forum" est recommandé pour connaître les fonctionnalités du forum.
--- L’équipe FantasPic ---
Modérateur : Jérémy
recherche infos bootloader
Bonjour,
Je suis nouveau sur le forum, j'ai 53ans et je programme en PICBASIC pro depuis 18 années. J'utilise pour mes montages aujourd'hui quasiment que des 18F45K22.
Je n'ai jamais utilisé de bootloader et je ne trouve pas beaucoup d'infos à ce sujet et rien de récent en tous cas. C'est peut-être un peu le point faible par rapport aux compatibles Arduino.
J'aimerais, si possible que l'on m'explique où je peux trouver un bootloader pour mes 45K22, et comment configurer pour pouvoir uploader mes programmes par liaison série. Je crois savoir qu'il faut respecter certains paramètres (genre vitesse UART, horloge...) mais c'est le flou... puisque rien de concret.
J'ai demandé déjà de l'aide à droite et gauche mais sans succès. Je ne suis pas le seul je crois puisqu'un ami n'ayant su s'en sortir, a ajouté une eeprom sur le PCB qui télécharge dans le PIC. Faut avouer que là, c'est une usine à gaz.
Merci pour toute information.
PS: je ne suis pas un crack en programmation même si c'est un peu mon job et que j'ai 200/300 programmes à mon actif. Je possède la licence MIKRO C pro (dongle) mais je ne m'en sert quasi pas car j'ai du mal avec le C. Mais si cela peut m'aider... (aussi PICKIT 2 & PICKIT 3)
Amicalement
Hervé
Je suis nouveau sur le forum, j'ai 53ans et je programme en PICBASIC pro depuis 18 années. J'utilise pour mes montages aujourd'hui quasiment que des 18F45K22.
Je n'ai jamais utilisé de bootloader et je ne trouve pas beaucoup d'infos à ce sujet et rien de récent en tous cas. C'est peut-être un peu le point faible par rapport aux compatibles Arduino.
J'aimerais, si possible que l'on m'explique où je peux trouver un bootloader pour mes 45K22, et comment configurer pour pouvoir uploader mes programmes par liaison série. Je crois savoir qu'il faut respecter certains paramètres (genre vitesse UART, horloge...) mais c'est le flou... puisque rien de concret.
J'ai demandé déjà de l'aide à droite et gauche mais sans succès. Je ne suis pas le seul je crois puisqu'un ami n'ayant su s'en sortir, a ajouté une eeprom sur le PCB qui télécharge dans le PIC. Faut avouer que là, c'est une usine à gaz.
Merci pour toute information.
PS: je ne suis pas un crack en programmation même si c'est un peu mon job et que j'ai 200/300 programmes à mon actif. Je possède la licence MIKRO C pro (dongle) mais je ne m'en sert quasi pas car j'ai du mal avec le C. Mais si cela peut m'aider... (aussi PICKIT 2 & PICKIT 3)
Amicalement
Hervé
recherche infos bootloader
- paulfjujo
Expert- Messages : 2597
- Âge : 73
- Enregistré en : juillet 2015
- Localisation : 01800
- Contact :
bonjour,
il existe des bootloader MikroC pour 18F2550 , 18F87J50 ..e tc ..
à voir sur la libstock de mikroC pour ton PIC
Par experience, sur le gros 18F87J50 ou le 18F47J53
le bootloader en USB est un regal .. tres rapide, et vu la taille ROM des PIC
le bootloader pese tres peu.
Le HID bootloader de mikroc est alors utilsé . plus besoin de pickitx
sur le PIC18F2550 , ça va aussi.
j'ai aussi utilisé des bootloader 16F877, 18F252, 18F4685,18F2620 ...
mais en liaison UART .. pas tres rapide , 38.4Kbds mais OK.
Damned !
je ne me rappellais plus que j'avais une carte de developpement "Ready for PIC18F45K22" avec un bootloder !
MAIS cette liaison USB est une liaison via un FTDI embarqué , donc en fait un bootloader serie (UA RT)
qui n'est donc pas aussi rapide qu'une VRAIE liaison HDI USB. mais quand meme à 115Kbds
il existe des bootloader MikroC pour 18F2550 , 18F87J50 ..e tc ..
à voir sur la libstock de mikroC pour ton PIC
Par experience, sur le gros 18F87J50 ou le 18F47J53
le bootloader en USB est un regal .. tres rapide, et vu la taille ROM des PIC
le bootloader pese tres peu.
Le HID bootloader de mikroc est alors utilsé . plus besoin de pickitx
sur le PIC18F2550 , ça va aussi.
j'ai aussi utilisé des bootloader 16F877, 18F252, 18F4685,18F2620 ...
mais en liaison UART .. pas tres rapide , 38.4Kbds mais OK.
Damned !
je ne me rappellais plus que j'avais une carte de developpement "Ready for PIC18F45K22" avec un bootloder !
MAIS cette liaison USB est une liaison via un FTDI embarqué , donc en fait un bootloader serie (UA RT)
qui n'est donc pas aussi rapide qu'une VRAIE liaison HDI USB. mais quand meme à 115Kbds
Code : Tout sélectionner
/*
* Project name:
Boot_Test (using mikroC Bootloader on PIC18's)
* Copyright:
(c) Mikroelektronika, 2008.
* Revision History:
20111017:
- initial release
* Description:
This is a serial port Bootloader implementation. All required bootloader
routines are placed in the boot18_32K file, the only thing that is
user-configurable is the baudrate of the UART communication, which is set
in the main() through appropriate call to Uart_Init(brg_reg).
Once started in PIC, the bootloader waits for a while (approx. 5 seconds)
to establish UART communication with the MikroBootloader application on the
PC. If it fails to do so, the bootloader starts the programme already
loaded in the MCU (initially it is just a NOP). If the communication is
established, the bootloader receives the hex file from the PC and places it
where requred (the MikroBootloader application reads out the hex file and
takes care of the location where hex is to be placed). When hex download
has finished, the user is notified by the MikroBootloader to reset the MCU,
and MCU enters the described bootload sequence again.
* Test configuration:
MCU: PIC18F45K22
http://ww1.microchip.com/downloads/en/DeviceDoc/41412D.pdf
Dev.Board: EasyPIC7
http://www.mikroe.com/easypic/
Oscillator: HS-PLL, 32.00000 MHz
Ext. Modules: None.
SW: mikroC PRO for PIC
http://www.mikroe.com/mikroc/pic/
* NOTES:
- It's recommended not to alter the start address of the main().
Otherwise, less space in ROM will be available for the application being bootloaded.
- RX and TX UART switches SW1.1, SW2.1 on EasyPIC7 should be turned On (board specific).
*/
#pragma orgall 0x7CC0
#define BOOTLOADER_START_ADDR 0x7CC0
#define START_PROGRAM_ADDR 0x7FC0
static char block[64];
void Start_Program() org START_PROGRAM_ADDR{
}
unsigned short UART_Write_Loop(char send, char receive){
unsigned int rslt = 0;
while(1){
Delay_5ms();
UART1_Write(send);
Delay_5ms();
rslt++;
if (rslt >= 0x0200){
return 0;
}
if (UART1_Read() >= receive){
return 1;
}
}
}
void Write_Begin(){
FLASH_Erase_Write_64(START_PROGRAM_ADDR, block);
//--- goto main
block[0] = 0x60; //0xF03EEF60
block[1] = 0xEF;
block[2] = 0x3E;
block[3] = 0xF0;
}
void Start_Bootload(){
char i = 0, xx, yy;
long j = 0;
while (1) {
if (i == 64) {
//--- If 32 words (64 bytes) recieved then write to flash
if (!j)
Write_Begin();
if (j<BOOTLOADER_START_ADDR){
FLASH_Erase_Write_64(j, block);
}
i = 0;
j += 0x40;
}
//--- Ask for yy
UART1_Write('y');
while (!UART1_Data_Ready()) ;
//--- Read yy
yy = UART1_Read();
//--- Ask for xx
UART1_Write('x');
while (!UART1_Data_Ready()) ;
//--- Read xx
xx = UART1_Read();
//--- Save xxyy in block[i]
block[i++] = yy;
block[i++] = xx;
}
}
void main() org BOOTLOADER_START_ADDR{
ANSELC = 0; // Configure PORTC pins as digital
UART1_Init(115200); // Init USART at 115200
if (UART_Write_Loop('g','r')) { // Send 'g' for ~5 sec, if 'r'
Start_Bootload(); // received start bootload
}
else {
Start_Program(); // else start program
}
}
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.
recherche infos bootloader
Bonjour,
Merci pour le renseignement, je me suis commandé la carte MIKROE chez Mouser... Ca tombe bien, c'est juste avec le µC que j'utilise le plus. Elle pourra m'être utile... Parce que... pas de chance je regardais mon dongle MIKROC mais c'est pour PIC24 et DSPIC... Je m'en souvenais même plus. Je vais pouvoir tester tout ça et vous dirais ce que cela a donné. Surtout que je compte m'en servir derrière un convertisseur serial on LAN (TIBBO). Ca me permettra de mettre à jour mon firmware à grande distance.
Amicalement
Merci pour le renseignement, je me suis commandé la carte MIKROE chez Mouser... Ca tombe bien, c'est juste avec le µC que j'utilise le plus. Elle pourra m'être utile... Parce que... pas de chance je regardais mon dongle MIKROC mais c'est pour PIC24 et DSPIC... Je m'en souvenais même plus. Je vais pouvoir tester tout ça et vous dirais ce que cela a donné. Surtout que je compte m'en servir derrière un convertisseur serial on LAN (TIBBO). Ca me permettra de mettre à jour mon firmware à grande distance.
Amicalement
recherche infos bootloader
Bonjour,
Bon ben quand ça veut pas, ça veut pas.... Le systeme bootloader de MIKROE semble coller avec sa plaque de test ou la mienne en liaison série classique, mais dès que j'ai mis entre les 2 (PC RS232 et carte a 18f45k22) un port série virtuel redirigeant vers une liaison UDP et un module TIBBO (serial over internet) rien ne va plus... Je vois bien mon pic essayer de causer avec mon pc sur mon réseau, en le forçant et avec un moniteur RS232, mais le soft bootloader de mikroe devient inutilisable car il n'initialise pas la connexion UDP en envoyant ne serait-ce qu'un caractère... Aussi il me faudrait éplucher le code du software PC (car je crois pas que ME adonné les sources de son logiciel bootloader) et en retro engeenering faire un bootloader en python par exemple... bon... Ben je sais pas si je vais le faire car gros boulot et pendant ce temps je ne bosse pas pour le boss... Heureusement, il ne comprends rien à ce que je fais
Bon ben quand ça veut pas, ça veut pas.... Le systeme bootloader de MIKROE semble coller avec sa plaque de test ou la mienne en liaison série classique, mais dès que j'ai mis entre les 2 (PC RS232 et carte a 18f45k22) un port série virtuel redirigeant vers une liaison UDP et un module TIBBO (serial over internet) rien ne va plus... Je vois bien mon pic essayer de causer avec mon pc sur mon réseau, en le forçant et avec un moniteur RS232, mais le soft bootloader de mikroe devient inutilisable car il n'initialise pas la connexion UDP en envoyant ne serait-ce qu'un caractère... Aussi il me faudrait éplucher le code du software PC (car je crois pas que ME adonné les sources de son logiciel bootloader) et en retro engeenering faire un bootloader en python par exemple... bon... Ben je sais pas si je vais le faire car gros boulot et pendant ce temps je ne bosse pas pour le boss... Heureusement, il ne comprends rien à ce que je fais
recherche infos bootloader
recherche infos bootloader
Salut FCO,
Quoi que parfois je me demande s'il ne comprends vraiment pas mais qu'il ne dit rien (pas si idiot le bougre !)
Marrant ton parcours (ton site) pas mal de points commun (Technicien RF, OM,CNC home made qui ne sert même plus depuis qu'elle est finie, bidouille...)
Bon j'ai tenté de commencer mon programmateur de PIC série en Python. Je sais pas si je vais aller au bout car il se laisse pas faire (ce qui veut dire que j'ai trop de lacunes en python...) mais j'insiste encore un peu. C'est facile de connecter en ICSP en fait....
Amicalement
F1SLU
Quoi que parfois je me demande s'il ne comprends vraiment pas mais qu'il ne dit rien (pas si idiot le bougre !)
Marrant ton parcours (ton site) pas mal de points commun (Technicien RF, OM,CNC home made qui ne sert même plus depuis qu'elle est finie, bidouille...)
Bon j'ai tenté de commencer mon programmateur de PIC série en Python. Je sais pas si je vais aller au bout car il se laisse pas faire (ce qui veut dire que j'ai trop de lacunes en python...) mais j'insiste encore un peu. C'est facile de connecter en ICSP en fait....
Amicalement
F1SLU
recherche infos bootloader
- F6FCO
Expert- Messages : 1413
- Âge : 70
- Enregistré en : décembre 2017
- Localisation : Furtif je suis.
- Contact :
Hello SLU ,
Ben oui les mêmes directions mais moi c'est la station home made qui ne sert plus depuis qu'elle est finie . Mais quand mon chantier de réno sera fini et que j'aurai remonté mon (mes) ateliers je compte me remonter une nouvelle station CW pour les bandes basses mais en y intégrant des PIC, genre boite d'antenne automatique par exemple.
Bon, ben çà fait deux OM's sur Fantaspic, comme quoi la radio mène à tout
Ben oui les mêmes directions mais moi c'est la station home made qui ne sert plus depuis qu'elle est finie . Mais quand mon chantier de réno sera fini et que j'aurai remonté mon (mes) ateliers je compte me remonter une nouvelle station CW pour les bandes basses mais en y intégrant des PIC, genre boite d'antenne automatique par exemple.
Bon, ben çà fait deux OM's sur Fantaspic, comme quoi la radio mène à tout
Retourner vers « Généralités sur les PICs »
Qui est en ligne
Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 72 invités