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
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
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
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.