联盛德 HLK-W806 (五): W801开发板上手报告

发布者:DelightfulGaze最新更新时间:2022-06-21 来源: eefocus关键字:联盛德  开发板 手机看文章 扫描二维码
随时随地手机看文章

W801

今天收到了等了两周的W801开发板, 和W806开发板外观基本一致, 但是尺寸, 排针和元件布局都有调整.


W801和W806开发板的实物对比

W801与W806的对比

两个芯片核心完全一样, 芯片布局基本一致, 看差异就能大致了解W801的配置


W801的规格书


概述增加了无线部分: “支持 2.4G IEEE802.11b/g/n Wi-Fi 通讯协议;支持 BT/BLE 双模工作模式,支持 BT/BLE4.2 协议”

W801内置 2MB Flash, 是W806的两倍, 其它MCU特性一致

增加的WIFI和蓝牙的描述


Wi-Fi 特性

支持 GB15629.11-2006,IEEE802.11 b/g/n

支持 Wi-Fi WMM/WMM-PS/WPA/WPA2/WPS

支持 EDCA 信道接入方式

支持 20/40M 带宽工作模式

支持 STBC、GreenField、Short-GI、支持反向传输

支持 AMPDU、AMSDU

支持 IEEE802.11n MCS 0~7、MCS32 物理层传输速率档位,传输速率最高到 150Mbps

2/5.5/11Mbps 速率发送时支持 Short Preamble

支持 HT-immediate Compressed Block Ack、Normal Ack、No Ack 应答方式

支持 CTS to self

支持 Station、Soft-AP、Soft-AP/Station 功能

蓝牙特性

集成蓝牙基带处理器/协议处理器,支持 BT/BLE 双模工作模式,支持 BT/BLE4.2 协议

低功耗模式

支持 Wi-Fi 节能模式功耗管理

PIN脚

W801的规格书增加了PIN脚频率和驱动能力栏, 各个PIN的最高频率是有区别的, 从10MHz到80MHz不等, 从后面的功能描述看, 与W806是一致的, 因此猜测此频率描述也适用于W806


W806和W801并非pin-pin兼容, 从PIN#5到#9这5个PIN对应的功能是不同的, 具体区别如下


W801有PB23没有WAKEUP, W806有WAKEUP没有PB23, W801从#5到#9顺位挪了一位

W801在#14为ANT, 对应的W806在#14为空

W801在#23的PA5, 增加了VRP_EXT复用

W801在#24的PA6, 增加了VRP_EXT复用

W801开发板的差异

板载LED

W806

板载三颗LED,分别对应PB0, PB1, PB2, 都是对应PWM复用的PIN脚,

W801

板载七颗LED, 分别对应PB5, PB25, PB26, PB18, PB17, PB16, PB11, 但是里面对应PWM复用的只有PB25和PB16, 所以没法像W806那样演示流水灯了

接口

W801除了将MicroUSB换成了Type-C, 还增加了Reset, 5V以及多组3.3V和GND的排线引出, 这个比较不错, 在W806上没有5V引出, 如果有5V外设的话比较不方便


天线

W801增加了板载天线, 因此比W806长出了一截


其它细节

W801开发板的宽度和W806是一致的, 但是排针间距比W806稍微增大了一点, 这样两个排针正好能对上2.54mm间距的面包孔, W806的排针是没法对齐标准2.54mm孔距的,估计是被吐槽了做的改动.

新增加的两个3pin排针位置比较让人费解. 这估计是匆忙设计出来的结果, 没有照顾到广大面包板用户的感受, 两排排针的设计, 就是为了正好横跨插在面包板上, 两边可以利用面包板的插孔引出接线, 而你在排针上叠一个3pin, 就没法插在面包板上用了.

新增加的6个pin, 其实应该参考Arduino NANO和Blue Pill的设计, 做到顶上去, 像boot, reset这样大部分时间基本用不着的pin, 就别做在主排针上浪费位置了.

这一版W801开发板的PB24印了两处, 有一处是错的, 位置在AMS1117这侧的主排针, 从Type-C口这头数起第3个pin, 这个应该是PB4, 板子印错了

W801的SDK

W801的SDK是在W800 SDK的基础上修改制作的, 和W806 SDK的结构相似, 但是代码差异巨大. 已经放到了Gitee wm-sdk-w80x, 有兴趣的可以下载尝试. 编译方式与W806相同, 先通过make menuconfig配置环境和工具链, 然后通过make编译.


另一方面, 因为W801和W806除了无线部分其它结构基本相同, 因此W806 SDK编译产生的固件是可以直接运行在W801上的, 这点已经验证过了.


W801的烧录下载

W801开发板在下载上和W806有一些区别. W801因为内置了串口的RTS控制, 对应观察到的一些现象:


W801开发板连上USB后, 会正常开始运行片内烧录的程序

使用Putty, XShell, Cutecom, Minicom这些串口程序连接W801开发板时, 会立即暂停运行, 使用联盛德Upgrade Tools, XCOM等软件则不会, 经检查, 区别在于RTS是否被拉低, 正常运行时RTS必须处于高电平状态.

串口拉低RTS时, W801开发板其实就被重置了, 如果不拉高则一直处于停止状态, 如果拉高则会复位重启

在Cutecom, Minicom这些串口程序断开连接后, RTS恢复高电平, W801开发板会复位重新运行使用W806的SDK下载烧录W801时, 需要将rules.mk中的-rs参数修改一下, 从at改为rts, 就能对W801开发板写入了


run:all

  @$(WM_TOOL) -c $(DL_PORT) -rs rts -ds $(DL_BAUD) -dl $(FIRMWAREDIR)/$(TARGET)/$(TARGET).fls -sl str -ws 115200


monitor:

  @$(WM_TOOL) -c $(DL_PORT) -sl str -ws 115200


list:

  @$(WM_TOOL) -l


down:

  @$(WM_TOOL) -c $(DL_PORT) -rs rts -ds $(DL_BAUD) -dl $(FIRMWAREDIR)/$(TARGET)/$(TARGET).fls


image:all

  @$(WM_TOOL) -c $(DL_PORT) -rs at -ds $(DL_BAUD) -dl $(FIRMWAREDIR)/$(TARGET)/$(TARGET).img


flash:all

  @$(WM_TOOL) -c $(DL_PORT) -rs rts -ds $(DL_BAUD) -dl $(FIRMWAREDIR)/$(TARGET)/$(TARGET).fls


erase:

  @$(WM_TOOL) -c $(DL_PORT) -rs at -eo all


烧录命令make flash


...

make[1]: Leaving directory '/home/milton/wm-sdk-w806/platform/drivers'

LINK     W806.elf

OBJCOPY  W806.bin

generate normal image completed.

generate normal image completed.

compress binary completed.

generate compressed image completed.

build finished!

connecting serial...

serial connected.

wait serial sync...

serial sync sucess.

mac 58-6D-CD-C1-CC-AA.

start download.

0% [####] 100%

download completed.


如果要单独控制W801进入下载模式, 需要用以下的步骤


连接串口(连接时RTS电平会被拉低)

拉高RTS电平, 这时候W801会复位

立即以10ms的间隔, 连续输入二进制字符0x1B, 即Esc对应的编码

此时W801就会进入下载模式, 回显如下的字符, 之后一直输出字符C

Secboot V0.6rn

CCCCCCCCCCCCCCCC


将W801转为下载模式的Python代码

import serial

import time


port = serial.Serial(

    "/dev/ttyUSB0",

    baudrate=115200,

    rtscts=True,

    timeout=0)


if port.isOpen():

    print('opened')

else:

    print('open failed')


packet = bytearray()

packet.append(0x1B)

port.rts = False # This will pull the voltage high


while True:

    for i in range(0, 100):

        port.write(packet)

        time.sleep(0.01)

    data = port.read_all()

    print(data)

    if len(data) == 0 or data == b'enter mainrn':

        print('.')

        continue

    else:

        break


print('pass')


while True:

    data = port.read_all()

    print(data)

    time.sleep(1)


Linux下的问题和解决

W801开发板在RTS的处理上是有问题的.


在Windows下, 串口程序可以在不改变RTS电平的情况下连接和断开串口, 因此可以做到不中断开发板的运行, 随时接入查看日志, 但是在Linux下, 串口程序在获取串口的fd时, 驱动会主动下拉RTS, 即使串口程序立刻将RTS恢复回高电平, 也会留下一个至少0.3毫秒的脉冲, 导致开发板复位重启. 如果不恢复高电平, 开发板就处于暂停运行的状态. 这样带来的问题就是在Linux下无法中途接入查看日志, 接入即重启.


关于Linux下串口RTS的问题可以查看 How to open serial port in linux without changing any pin?


软件上, 可以通过修改和替换驱动取消连接时的RTS低电平脉冲, 这个一般不推荐使用, 因为可能会影响到其它的串口设备. 从物理上解决会比较简单, 就是加一个电容来抵消这个脉冲, 实际测试, 在Reset和GND之间接入一个10uF的电容, 就可以抵消8ms以内的低电平影响. 加入电容后, 只要串口程序在获得fd后立即拉高RTS电平, 就不会中断或者重启开发板.

如果要同时在Win10和Linux上使用, 10uF可能会导致Win10识别串口硬件失败(设备出感叹号), 需要调低到5uF, 此时在Linux下能消除的低电平脉冲宽度大约在3ms.

以上是测试的连接方式, 实际使用中推荐使用4.7uF的0603的贴片电容直接连接, 注意焊接时不要短路到到相邻的PA4和PB6. 如果担心平时使用时不慎短接, 可以在上面覆盖热熔胶做绝缘.

关键字:联盛德  开发板 引用地址:联盛德 HLK-W806 (五): W801开发板上手报告

上一篇:联盛德 HLK-W806 (六): I2C驱动SSD1306 128x64 OLED液晶屏
下一篇:联盛德 HLK-W806 (四): 软件SPI和硬件SPI驱动ST7735液晶LCD

推荐阅读最新更新时间:2024-11-14 01:31

硬石F4开发板评测之步进电机的基本控制
硬石F4开发板简介及步进电机实验 YS-F4Pro 开发板是硬石团队研发的针对STM32F407芯片的综合性实验测试平台,开发板几乎囊括了芯片所有的外设,该开发板主要是针对电机控制而设计,板子上集成了步进电机接口、编码器接口、无刷电机接口、以及为方便工业控制而专门预留的AD采集接口和强大的输入输出接口等;另外,还板子上还集成了多种通信接口,比如:RS232接口、RS485接口、CAN接口、USB接口、以太网接口等。借用官网的图片,我们可以初步领略一下这款板子的强大功能: 该板子的通用输入输出部分、步进电机接口,均采用了光耦隔离,可以很方便的适应各种应用场景,电源部分,也采用了共模电感和CBB电容,搭建了一个小心的滤波器,增强了
[单片机]
硬石F4<font color='red'>开发板</font>评测之步进电机的基本控制
mini2440开发板FTP上传文件的问题
用了一个多月的ubuntu了感觉不错,还是不用虚拟机开发简单。今天切回windows,在VM虚拟机上,用FTP向开发板传输文件,竟然传不了,以前用虚拟机安装fedora9可以传的。但是现在不能了,情况是可以ping 通开发板,但在windows上用ftp 192.168.1.230 (这个是我开发板的ip) 老是出现未知错误,在linux上也连不上开发板。后来发现windows防火墙没关,以为是这个问题,后来发现不是。搞了一个晚上,头都大了。最后终于发现问题了。现在发现遇到问题一定要仔细分析,一定是有原因的。不要瞎着急,乱操作。下面说明一下配置的注意事项: 1:windows防火墙 和linux防火墙 首先都确保关闭 2:笔记
[单片机]
玩转MSP430F5529开发板几大重要功能及常用模块
准备工作 1、下载及安装CCS v8.0 下载软件及相关wave包: 大家可以选择去TI官网下载 TI官网 也可以选择在网盘下载 CCS v8 软件包 提取码:8eq6 MSP430相关支持安装 提取码:ehjo 进行安装前请一定确认关闭所有杀毒软件,安装包不能存在于 中文路径下 ,否则会发生错误 第一步 点击图片中exe文件进行安装 第二步 红色为警示安装注意事项,直接点击继续 第三步 同意许可 继续安装 第四步 请安装在一个英文目录下 第五步 点击选择软件使用场景,大家可以和我一样选择,或者选择自己需要的。只要 选上了MSP430即OK 第五步 选择下载使用的固件 默认即
[单片机]
玩转MSP430F5529<font color='red'>开发板</font>几大重要功能及常用模块
linux-2.6.30.4移植至2440开发板
一、下载linux-2.6.30.4源码,并解压 ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-2.6.30.4.tar.gz tar zxvf linux-2.6.30.4.tar.gz 二、在系统中添加对ARM的支持 $vim Makefile 193#ARCH ?= $(SUBARCH) 194#CROSS_COMPILE ?= 195 ARCH=arm 196 CROSS_COMPILE=arm-linux- 三、修改系统时钟 $vim arch/arm/mach-s3c2440/mach-smdk2440.c 系统的外部时钟为12MHz 16
[单片机]
限量7折!米尔STM32MP135开发板
说到 MCU 就会想到 S MT32, 而 STM32MP1 作为新一代 MPU 的典范,有着极富开创意义的异构系统架构,兼容 MPU 和 MCU 的 双重优势,入门级、性价比高、能跑 L inux 系统、应用场景丰富 等 特点,深 受业界的喜爱! 米尔电子作为 ST 官方合作伙伴,先后开发了 S TM32MP151 、 S TM32MP157 、 STM32MP13 5 系列核心板和开发板,受到广大客户的认可。 米尔为了感谢广大客户的支持,推出 STM32MP1 35 开发板打折特惠活动! 米尔基于 STM32MP1 35 开发板 限 量 7 折! 7 折!
[嵌入式]
限量7折!米尔STM32MP135<font color='red'>开发板</font>
zigbee学习之路(一):zigbee介绍 一.前言
一.前言 大家好,我是一名在校的大学生,最近对zigbee非常感兴趣,于是自己从网上买了一款秉火cc2530的zigbee开发板,想通过这个平台来和大家分享自己学习和研究的经历,下面就来简单的介绍下zigbee 二.zigbee定义 ZigBee是基于IEEE802.15.4标准的低功耗局域网协议。根据国际标准规定,ZigBee技术是一种短距离、低功耗的无线通信技术。这一名称(又称紫蜂协议)来源于蜜蜂的八字舞,由于蜜蜂(bee)是靠飞翔和“嗡嗡”(zig)地抖动翅膀的“舞蹈”来与同伴传递花粉所在方位信息,也就是说蜜蜂依靠这样的方式构成了群体中的通信网络。其特点是近距离、低复杂度、自组织、低功耗、低数据速率。主要适合
[单片机]
zigbee学习之路(一):zigbee介绍 一.前言
QEMU模拟FriendlyArm的Mini2440开发板
这篇博文中主要从以下几点进行叙述: 1、Mini2440开发板和QEMU模拟器简介 2、编译适配Mini2440的QEMU 3、Buildroot (2012.05)的使用 4、在QEMU中运行编译好的系统 4.1、生成NAND镜像并初始化 4.2、基于NFS启动 4.3、基于NAND镜像启动 4.4、强大的工具 -- Flashimg 5、附件 -- 竞赛第一阶段提交作品压缩包,内含 build.sh 完成全部编译启动工作 一、 Mini2440开发板和QEMU模拟器简介 德国FriendlyARM(国内译为”友善之臂“)公司推出的Mini2440开发板,一直以来为 广大嵌入式爱好者所熟知,国内天嵌公司
[单片机]
单片机开发板是什么?
单片机开发板是什么呢?简单来说,它是指集成了许多单片的外围器件,如LED 灯,数码管,按键,行列式按键,步进电机,伺服电机,液晶显示等等用来学习,实验,开发等使用的板子,是一种实验设备(单片机编程)。 单片机开发板是在正式批量生产产品前,对产品进行设计和开发时使用的单片机,当我们对理论知识的学习有了一定的基础,单片机开发板就是我们实践的工具(pic单片机),通过单片机开发板我们可以做一些实验,从而掌握所学的知识。实际应用中,单片机开发板有以下优势: (1)利用一个单片机开发板就可以编制不同的程序实现各种各样的功能,不用为了一个实验焊一块电路板了. (2)在开单片机发板上设计,调试好程序,就能方便地移植到产品上,只是有时要作适
[单片机]
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
更多往期活动

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved