新闻中心

EEPW首页 > 消费电子 > 设计应用 > WiFi模块中软件驱动编写经验

WiFi模块中软件驱动编写经验

作者:时间:2018-08-10来源:网络收藏

现如今和智能应用之间的配合离不开模块的帮助。没有模块,就不能很好的工作,甚至不能很好的进行数据的交换。本文将从编写的角度,利用RAK411来进行举例,为大家介绍模块的的相关经验。

本文引用地址:http://www.eepw.com.cn/article/201808/386281.htm

编写

这一部分主要涉及SPI的收发函数。中断有数据的时候就会产生,SPI发时钟去读即可(空闲是0,有数据待读取出来是1)。

1)、初始化单片机SPI口,注意模块的SPI时钟最高支持16MHz;初始化GPIO/开IO中断;

voidSPI_Init(void)

{//初始化单片机SPI口(注意SPI时钟不能太高);

CPOL=0-------------------------------------时钟信号在低电平时空闲;

CPHA=0------------------------------------数据在时钟上升沿锁存,在时钟下将沿传输;

MSB_FIRST------------------------------------数据高位首先发送;

8BITMODE-----------------------------------数据宽度为8位;

CS----------------------------------------------从机选择信号低有效;

}

voidGPIO_Init(void)

{//设置连接到模块INT脚的那个GPIO口为输入状态;

//开启该GPIO的中断;

}

2)、voidSPI_Send_Bytes(uint8_t*p_temp,uint8_tdata_len)

{//不同单片机,修改底层发函数

}

3)、voidSPI_Get_Bytes(uint8_t*p_temp,uint8_tdata_len)

{//不同单片机,修改底层收函数

}

4)、GPIO中断函数编写

voidGPIO_PINx_IRQ_Handler(void)

{while(查询INT脚的电平==1)

{SPI_Get_Bytes(x,y);

}

}

通过本文的介绍,可以看到在WiFi模块中软件驱动编写是非常重要的。本文针对此方面进行着重的介绍的同时也分享了一些经验,通过代码的形式让大家能够直观的了解到其中的技巧。在WiFi模块软件驱动编写遇到问题的朋友不妨画上几分钟来阅读本文,相信会有意想不到的收获。



评论


相关推荐

技术专区

关闭