Oszillator / Bootloader Einstellungen beim dsPIC30F4011

Gast #2298899
Moin Leute,

ich habe einen externen Quarz mit 20MHz für meinen dsPIC spendiert.
Sehe ich das richtig das ich dann als Einstellung etwas in dieser Art 
wählen sollte:

HS/3 w/PLL 16x mit (20MHZ/3)* 16 = 106,667 MHz internen Takt (max. 
intern Takt ist 120 MHz)

Wie müßte denn der Bootloader für den dsPIC30F 
(AN1094/Bootloader_SW_022409) umgeschrieben werden und wie schaut das in 
der HEX-Datei (Programm) aus?

Habe mit dem Bootloader selber noch nichts gemacht.

Jede Hilfe ist willkommen!

gruß
Andi
Gast
Moin Leute,

seh ich das (nach Studium einiger Datenblätter) richtig das der 
dsPIC30F4011 zwar HS unterstützt aber nicht HS/3 w/PLL 16x?
Dann kann ich meinen dsPIC ja nur bei 20 MHz laufen lassen grummel.

gruß
Andi
Gast
Ich nochmal:

Zum Thema Bootloadereinstellungen, wenn main.c (aus 
Bootloader_SW_022409)mit XT 7,2738MHz im Original so aussieht
1
#include "p30fxxxx.h"
2

3

4
//Defines for System Clock Timing -
5
//For oscillator configuration XT x PLL8 mode,
6
//Device Throughput in MIPS = Fcy = 7372800*8/4 = ~14.74 MIPS
7
//Instruction Cycle time = Tcy = 1/(Fcy) = ~68 nanoseconds
8

9
#define XTFREQ          7372800         //On-board Crystal frequency
10
#define PLLMODE         8               //On-chip PLL setting
11
#define FCY             XTFREQ*PLLMODE/4        //Instruction Cycle Frequency
12

13
#define BAUDRATE         115200       
14
#define BRGVAL          ((FCY/BAUDRATE)/16)-1 
15

16
#define COMMAND_NACK     0x00
17
#define COMMAND_ACK      0x01
18
#define COMMAND_READ_PM  0x02
19
#define COMMAND_WRITE_PM 0x03
20
#define COMMAND_READ_EE  0x04
21
#define COMMAND_WRITE_EE 0x05
22
#define COMMAND_READ_CM  0x06

müßte ich dann den Code mit einem 20MHz Quarz (HS) so schreiben
1
#include "p30fxxxx.h"
2

3

4
//Defines for System Clock Timing -
5
//For oscillator configuration XT x PLL8 mode,
6
//Device Throughput in MIPS = Fcy = 7372800*8/4 = ~14.74 MIPS
7
//Instruction Cycle time = Tcy = 1/(Fcy) = ~68 nanoseconds
8

9
#define HS          20000000         //On-board Crystal frequency
10
//#define PLLMODE         8               //On-chip PLL setting
11
#define FCY             HS/4        //Instruction Cycle Frequency
12

13
#define BAUDRATE         115200       
14
#define BRGVAL          ((FCY/BAUDRATE)/16)-1 
15

16
#define COMMAND_NACK     0x00
17
#define COMMAND_ACK      0x01
18
#define COMMAND_READ_PM  0x02
19
#define COMMAND_WRITE_PM 0x03
20
#define COMMAND_READ_EE  0x04
21
#define COMMAND_WRITE_EE 0x05
22
#define COMMAND_READ_CM  0x06
23
#define COMMAND_WRITE_CM 0x07
24
#define COMMAND_RESET    0x08

Und ist das das einzige was ich ändern muß und muß ich das Programm das 
ich später über den Bootloader laden will  noch verändern?

Gruß
Andi

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 15 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.