Zdravím, nemohl by mi někdo pomoci s programováním v CCS4 a MSP430? Použil jsem knihovnu "USI_I2CMaster.h" a pořád mi to háže chyby níže. podle mě mám jen někde špatně nastavený include nebo něco. Přikládám i kus kódu. Děkuji moc všem.
errors encountered during linking; "TestF2012.out" not built TestF2012 line 0 1294421001531 703
unresolved symbol StatusCallback, first referenced in ./TestF2012.obj TestF2012 line 0 1294421001531 697
unresolved symbol TI_USI_I2C_MasterInit, first referenced in ./TestF2012.obj TestF2012 line 0 1294421001531 702
unresolved symbol TI_USI_I2CRead, first referenced in ./TestF2012.obj TestF2012 line 0 1294421001531 698
unresolved symbol TI_USI_I2CSelect, first referenced in ./TestF2012.obj TestF2012 line 0 1294421001531 699
unresolved symbol TI_USI_I2CStop, first referenced in ./TestF2012.obj TestF2012 line 0 1294421001531 700
unresolved symbol TI_USI_I2CWrite, first referenced in ./TestF2012.obj TestF2012 line 0 1294421001531 701
Kód:
#include "msp430x20x2.h"
#include "USI_I2CMaster.h"
#define LAMP_ON P1DIR |= BIT0
#define LAMP_OFF P1OUT ^= BIT0
char Hour[] = {00,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23};
int StatusCallback(unsigned char c);
void main(void)
{
WDTCTL = WDTPW+WDTHOLD; /* Watchdog vypnut */
if (CALBC1_1MHZ ==0xFF || CALDCO_1MHZ == 0xFF) /* Pokud je hodnota kalibrace vymazána */
{
while(1); /* Nespouštět */
}
BCSCTL1 = CALBC1_1MHZ; /* Nastavení frekvence DCO */
DCOCTL = CALDCO_1MHZ;
for(;;)
{
void DS1307Settime(char Hour);
{
TI_USI_I2C_MasterInit(USIDIV_7+USISSEL_2+USICKPL, StatusCallback); /* Inicializace I2C */
TI_USI_I2CSelect(68);
__disable_interrupt();
TI_USI_I2CRead(68, 3, 1,00);
__bis_SR_register(LPM0_bits + GIE);
__disable_interrupt();
TI_USI_I2CWrite(68, 3, 1,Hour);
__bis_SR_register(LPM0_bits + GIE);
TI_USI_I2CStop(); /* Stop I2C */
}
Fórum › Mikrokontroléry
MSP430 a I2C
No, ještě je k tomu soubor s koncovkou ".s43" ale to když přilinkuju tak mi to hodí přes sto chyb. On je to vlastně soubor v Assembleru. Ve vzorovém příkladu od TI mají taky jen tento soubor s ".h" Asi to dělám někde špatně ne? mě taky došlo že ten Header je málo. Ale tak tedy nevím jak tam ten ".s43" přidat. Děkuji moc.
Tak jsem dal v nastavení linkeru v sekci "File Search Patch" aby to načítalo i ty soubory s koncovkou ".s43" a chyby zmizely, ale mám tam jiné :-(
cannot open file "./RTC.obj": No error
expecting filename, option, MEMORY, or SECTIONS instead of ";"
RTC je název mého projektu. Díky zase za všechny rady. To že jsem to změnil v nastavení jsem vygooglil v jednom fóru který řešil podobnou chybu. Děkuju moc.
Přidej příspěvek
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Uživatelé prohlížející si toto vlákno
Podobná vlákna
I2C na Atmega32 — založil Deko
Komunikace dvou AVR po I2C — založil tripwax
Avr jako i2c slave — založil David Skalka
STM32L-discovery - problém s I2C — založil Mishella
Autologin script pro FF pomocí Greasemonkey — založil Petroff
Moderátoři diskuze