首先下载相关文件eMPL.zip,解压缩得到eMPL文件夹,将整个eMPL文件夹复制到要移植的工程下的project/code/目录下,包括以下文件:
打开keil mdk项目,点击魔法棒配置目录,添加…\code\eMPL与…\code\eMPL\include这两个环境目录,点OK。
添加项目文件夹及文件
选中这6个文件点击add,再点close,然后ok
可以看到6个文件已经被添加到项目里了
打开zf_driver_soft_iic.c,在最后添加以下内容:
//-------------------------------------------------------------------------------------------------------------------
// @brief GPIO方向设置
// @param pin 选择的引脚 (可选择范围由 common.h 内PIN_enum枚举值确定)
// @param dir 引脚的方向 输出:GPO 输入:GPI
// @return void
// Sample usage: gpio_dir(D0,GPO);//设置D0为输出模式
//-------------------------------------------------------------------------------------------------------------------
void gpio_dir(gpio_pin_enum pin, gpio_dir_enum dir)
{
if (GPI == dir) PORTPTR[pin>>5]->GDIR &= ~(1U << (pin&0x1f));
else PORTPTR[pin>>5]->GDIR |= (1U << (pin&0x1f));
}
#define SEEKFREE_SCL C23 //定义SCL引脚 可任意更改为其他IO
#define SEEKFREE_SDA C22 //定义SDA引脚 可任意更改为其他IO
#define SDA gpio_get_level (SEEKFREE_SDA)
#define SDA0() gpio_low (SEEKFREE_SDA) //IO口输出低电平
#define SDA1() gpio_high (SEEKFREE_SDA) //IO口输出高电平
#define SCL0() gpio_low (SEEKFREE_SCL) //IO口输出低电平
#define SCL1() gpio_high (SEEKFREE_SCL) //IO口输出高电平
#define DIR_OUT() gpio_dir (SEEKFREE_SDA, GPO) //输出方向
#define DIR_IN() gpio_dir (SEEKFREE_SDA, GPI