Dobrý den,
právě zakouším programovat pic v jazyce C, používám MPLAB a C18. Program se mi snad povedlo vytvořit dobře, ale mám problém, když chci nahrát HEX do mikrokontroleru.
Kompiler ho přeloží a vyskočí nějáké okno, které nevím co znamená a napíše BUILD SUCCEEDED. Okno je v souboru.
Programátor používám od Brenner8-P a když dám nahrát HEX tak to vypíše nějáké chyby.
Start to program FLASH## 232 error(s)
Start to program ID - ok
Start write Configuration## 1 error(s)
Nevím co to chce ručně nakonfigurovat, prosím poraďte.
Děkuji.
administrator: přejmenováno z “Problém s naprogramováním PIC18F2331”
Střelím do prázdna - programátor píše něco ve smyslu “use manual config”, myslím, že to znamená, že někde manuálně nastavuješ konfigurační bity.
Jak je máš nastaveny?
Hlavně se to týká bitů chránících proti čtení - já programuji s JDM a IC-prog (zatím teda řadu PIC16Fxx) a pokud nastavím ochranu proti čtení, programátor vypisuje chybu. Ale program zapíše, což mě přivádí k další otázce - opravdu v procesoru nic není? Ale nezkoušej to čtením přes programátor
jj přesně tak use manual Config-settings
Nikde jsem nic nenastavoval, ale v PIC-configuration je dost záložek CONFIG1H, CONFIG2L, CONFIG2H,… to je ono?
To už jsem zkoušel, vycucnout z PICka hex a nic v něm nebylo.
Jestli je procesor chráněný proti čtení, tak vycucnout hex z procesoru je právě to, co nepůjde.
Co udělá procesor, když ho připojíš na napětí?
Podle programu by měl přepínat log 1 a 0 na portu C, samozřejmě za předpokladu, že je naprogramovaný a má zadaný správný oscilátor - to je právě v těch bytech CONFIGxx. Co přesně v těch bytech je?
Sorry, teď mě došlo, že je jich tam moc.
Zajímá mě hlavně: CONFIG4L (je povoleno low voltage programming)?
CONFIG5L a H (to je code protect)?
a případně CONFIG1H (nastavení oscilátoru)
" Pojistky " mysleno konfiguracni slovo ,
na konci souboru “p18f2331.h” sou vsechny vypsany , je tam i moznost je nechat defaultne , CONFIGX DEFAULT ci nak tak , skusil bych je tam nak zapsat, bohuzel nevim jak se to v C18 zapisuje , skousel sem to ale hazi my to eror pri prekladu ze chybi nakej soubor c018i.o
EDIT: koukal se do Examplu a zapisovaly to tam nak takle
[code]#include <p18cxxx.h> #include <delays.h>
#pragma config OSC = HS, OSCS = OFF #pragma config PWRT = OFF #pragma config BOR = OFF #pragma config WDT = OFF #pragma config CCP2MUX = OFF #pragma config LVP = OFF[/code]
Zkusil bych ten program napsat přímo v asm, jestli i pak bude programátor hlásit chyby, hledal bych problém v nastavení programátoru.
Možná že je chyba někde v kompilaci toho Céčka, já jsem se už setkal s případem, kdy mi kompilace proběhla v pořádku, ale po nahrání do uP to nefungovalo.
#pragma config OSC = HS /* HSPLLSets the oscillator mode to XT for cristal up to 4MHz or HS=>4MHz /
//#pragma config WDT = OFF / Turns the watchdog timer off / #pragma config LVP = OFF / Turns low voltage programming off /
//#pragma config DEBUG = ON / Compiles without extra debug code / #pragma config DEBUG = OFF / Compiles without extra debug code */