链接未定义的参考帮助的问题!非常困难

时间:2018-05-12 09:31:58

标签: c visual-studio arm undefined-reference atmelstudio

我得到一个“未定义的引用'i2c_master_init'”我认为这是做一些链接但不确定如何纠正?

更新:

一段时间以来,我一直试图找到答案。并注意到了一点但不确定我做错了什么!对不起,现在必须要努力阅读!

这是来自i2c_master.h,并没有给我任何问题

<EditText
    android:id="@+id/etTest"
    android:layout_width="match_parent"
    android:layout_height="?actionBarSize"
    android:layout_margin="10dp"
    android:background="@drawable/edittext_rectangale_border"
    android:drawableEnd="@drawable/ic_arrow_drop"
    android:focusable="false"
    android:focusableInTouchMode="false"
    android:hint="@string/spinner_prompt"
    android:inputType="text"
    android:padding="5dp" />

这是在同一个文件中并给我提出问题

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">
    <solid android:color="#FFFFFF"/>
    <stroke
        android:width="3dp"
        android:color="#B9B9B9"/>
    <padding
        android:bottom="1dp"
        android:left="1dp"
        android:right="1dp"
        android:top="1dp"/>
    <corners
        android:bottomLeftRadius="3dp"
        android:bottomRightRadius="3dp"
        android:topLeftRadius="3dp"
        android:topRightRadius="3dp"/>
</shape>

这是我的代码.....

   static inline void i2c_master_enable(const struct i2c_master_module *const module){

   /* Sanity check of arguments */
    Assert(module);
   Assert(module->hw);

   SercomI2cm *const i2c_module = &(module->hw->I2CM);

   /* Timeout counter used to force bus state */
    uint32_t timeout_counter = 0;

    /* Wait for module to sync */
    _i2c_master_wait_for_sync(module);

    /* Enable module */
    i2c_module->CTRLA.reg |= SERCOM_I2CM_CTRLA_ENABLE;

    #if I2C_MASTER_CALLBACK_MODE == true
   /* Enable module interrupts */
   system_interrupt_enable(_sercom_get_interrupt_vector(module->hw));
   #endif

  /* Start timeout if bus state is unknown */

  while (!(i2c_module->STATUS.reg & SERCOM_I2CM_STATUS_BUSSTATE(1))) {
 timeout_counter++;
 if(timeout_counter >= (module->unknown_bus_state_timeout)) {

 /* Timeout, force bus state to idle */
 i2c_module->STATUS.reg = SERCOM_I2CM_STATUS_BUSSTATE(1);
 /* Workaround #1 */
  return;
  }

这是我的输出......

 enum status_code i2c_master_init(struct i2c_master_module *const module, 
 Sercom *const hw, const struct i2c_master_config *const config);

0 个答案:

没有答案