Mikrokontroller programozásában segítség?
MPLab-ban szeretnék írni egy egyszerű kis programot, ami egyelőre egy LED-et megvilágít.
A kód:
#include <p18f4620.h>
#define LED1 LATDbits.LATD0
#define LED2 LATDbits.LATD1
#define LED3 LATDbits.LATD2
#define LED4 LATDbits.LATD3
#define LED5 LATDbits.LATD4
#define LED6 LATDbits.LATD5
#define LED7 LATDbits.LATD6
#define LED8 LATDbits.LATD7
#define InitLEDPins() LATD &= 0b10101000; TRISD &= 0b00000000;
#define TRUE 1
#define FALSE 0
#define ON 1
#define OFF 0
#define HIGH 1
#define LOW 0
void main(void)
{
LED1 = ON;
}
Ar ERROR:
Error - could not find definition of symbol 'LATDbits' in file './main.o'.
Hol kell definiáljam a LATDbits-et?
Elvileg a fejállományban kéne lennie.
Próbáld meg inkább így:
#include "p18f4620.h"
Most beleköt a Linker Script-be. Eddig nem volt gond vele.
Tényleg ritka, hogy a fejlesztőkörnyezettel legyen gond, de ez nem egy megvásárolt termék, hanem valaki által megbuherált és általam letöltött program.
Azt írja, hogy:
Error - Unrecognized input in '..\..\..\program files\Microchip\MPASM Suite\LKR\18f4620_g.lkr:4': #DEFINE
18f4620_g.lkr:4': #DEFINE
és itt mi van? negyedik sorban mint irja
// File: 18f4520_g.lkr
// Generic linker script for the PIC18F4520 processor
#DEFINE _CODEEND _DEBUGCODESTART - 1
#DEFINE _CEND _CODEEND + _DEBUGCODELEN
#DEFINE _DATAEND _DEBUGDATASTART - 1
#DEFINE _DEND _DATAEND + _DEBUGDATALEN
Így néz ki az első pár sora. De gondolom a negyedik sor alatt nem számolta bele a bekommentezett részt is.
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!