3-网络芯片CH395Q学习开发-芯片初始化,网线连接检测实验(轮训和中断方式)

<p><iframe name="ifd" src="https://mnifdv.cn/resource/cnblogs/LearnCH395Q" frameborder="0" scrolling="auto" width="100%" height="1500"></iframe></p>

说明

这节演示一下芯片初始化和网线连接检测实验

提醒:无论是SPI,USART,并口,程序操作步骤都是一样的!

只是不同的接口发指令发给模块,然后用不同的接收接收数据而已.

测试本节代码(STM32F103XXXX)

1.用户可以使用杜邦线根据自己的情况设置和连接引脚

 

2,注意!

要想模块使用SPI通信,模块的TX引脚需要在模块重启之前设置为低电平.

上面的引脚分配把模块的TX引脚接到了单片机的PA3上,也就是串口2的RX上,如果用户使用了串口2,请注意!

3.把模块用网线和路由器或者交换机

注意,连接路由器或者交换机的时候是连接其LAN口.

4,把这节程序下载到单片机

5.网络指示灯亮起

6.单片机串口1作为日志打印口

程序说明

1.程序都是调用现成的函数

CH395Q内部封装的特别的好,以至于咱只需要调用下函数就可以了.

因为其优秀的封装,使得51单片机驱动它也熬不费力!!!

补充(推荐使用中断方式)

if(Query395Interrupt())
            {
                /*»ñÈ¡ÖжÏʼþ(²»Í¬µÄÓ²¼þ°æ±¾»ñÈ¡º¯Êý²»Ò»Ñù)*/
                if(ch395_version>=0x44) 
                {
                    ch395_status = CH395CMDGetGlobIntStatus_ALL();
                }
                else
                {
                    ch395_status = CH395CMDGetGlobIntStatus();
                }
                
                /* ´¦ÀíPHY¸Ä±äÖжÏ*/
                if(ch395_status & GINT_STAT_PHY_CHANGE)                           
                {
                    if(CH395CMDGetPHYStatus() == PHY_DISCONN)//ÍøÏ߶Ͽª
                    {
                        printf("
PHY_DISCONN
");
                    }
                    else//ÍøÏßÁ¬½Ó
                    {
                        printf("
PHY_CONNECTED
");
                    }
                }
            }
原文地址:https://www.cnblogs.com/yangfengwu/p/14851595.html