打印
[N32WBxxx]

【N32WB03X】初识

[复制链接]
1270|15
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 yangjiaxu 于 2021-12-20 16:49 编辑
国民技术,是中国安全芯片、通用MCU领军企业和国家级**技术企业,之前好像用过国密的身份*读卡器,也不知道这俩是不是一家,哈哈哈,不过近几年国产芯片崛起,真的给我很大的感触,国家终于可以与国外的科技抗衡了。
这两年芯片缺的很,之前用ST,后来用航顺,中科芯,依次缺货,再后来选择了GD和华大,也是货源紧张,然后我听说国民技术也有MCU,而且性价比还很高,所以一直有所关注,不负有心人,国民来21ic了,欢迎~~~,之前有幸参加21ic和国民举办的活动,获得了一块开发板,不错,终于可以和国民技术近距离的了解了,今天收到板子了,紧忙开箱瞅一瞅。

盒子很大气,上面印着国民技术,打开是一块开发板和一条数据线,该说不说,这条数据线一点儿用都没有,蓝牙板的接口是Type-C,发的却是miniUSB,不过发了咱就收着,我想国民也不能往回要了吧,哈哈哈哈;接下来咱们看看开发板。

蓝色开发板,有品位,看板子布局,可以看出中规中矩,MCU是支持蓝牙5.1的,采用QFN封装,外围电路看着还算是简洁,元件不是很多,以后设备小型化应该不是问题,天线采用2种制式,一种是IPEX外接出来,一种是板载PCB的天线,都可以,官方默认用的板载PCB方式,中间有一些短路帽,这些短路帽是仿真器与N32WB03X连接的,方便工程师可以快速调试。 板载4个轻触按键,一个复位,一个唤醒,2个用户按键,两个LED指示灯,右侧LQFP封装的是板载仿真器 ,采用的是CMSIS-DAP开源协议,速度很快,非常给力。本板的主要是接口用了Type-C,非常得意这个接口,五星好评。

接下来是环境搭建,我看官方支持keil,好嘛,这不栽我手里了嘛,keil的话就需要安装pack支持包,官方也提供了,双击一路next就可以。在官方提供的资料之中,选择第5项。
打开一个蓝牙例程,然后在通过快速指南进行快速学习。很快就能上手了。接下来我做了个小小的项目,通过\5-软件开发套件(Software Development Kit)\N32WB03x_SDK V1.0.0\projects\n32wb03x_EVAL\ble\rtdss 例程,开启本帖的精彩之处。

首先打开文档,UG_N32WB03x 数传例程指南V1.0.pdf,看看蓝牙函数的功能和结构。知道收到数据的函数是app_usart_tx_fifo_enter;

接下来是工程,使用keil打开即可,看了一下程序结构,OK,没什么问题,主要是我们需要获取蓝牙收到的数据,然后通过程序解析实现对LED的控制。

主要修改代码如下:

uint8_t app_usart_tx_fifo_enter(const uint8_t *p_data, uint16_t len)
{
    uint32_t in_len, out_temp;
    //store data in fifo
    NS_LOG_DEBUG("%d,%d,%d\r\n",len,usart_tx_fifo_in,usart_tx_fifo_out);
    out_temp = usart_tx_fifo_out;
        
                if(p_data[0] == 0)
                {
                        LedOn(LED1_PORT,LED1_PIN);   
                }
                else if(p_data[0] == 1)
                        LedOff(LED1_PORT,LED1_PIN);   
               
    while(len)
    {
        if(usart_tx_fifo_in >= out_temp )
        {
            in_len = USART_TX_FIFO_SIZE-usart_tx_fifo_in;
            if(in_len > len)
            {
                in_len = len;
            }
            memcpy(&usart_tx_fifo_buf[usart_tx_fifo_in],p_data,in_len);
            len = len-in_len;
            p_data +=  in_len;
            usart_tx_fifo_in = (usart_tx_fifo_in + in_len)%USART_TX_FIFO_SIZE;
            
        }
        else if(usart_tx_fifo_in < out_temp )
        {
            in_len = out_temp-usart_tx_fifo_in-1;
            if(in_len > len)
            {
                in_len = len;
            }
            memcpy(&usart_tx_fifo_buf[usart_tx_fifo_in],p_data,in_len);
            len = len-in_len;
            usart_tx_fifo_in = (usart_tx_fifo_in + in_len)%USART_TX_FIFO_SIZE;
            
            //fifo full,drop the rest data
            if(len)
            {
                NS_LOG_WARNING("F:%d,%d,%d\r\n",len,usart_tx_fifo_in,out_temp);
            }
            
            break;
        }
    }
   
    //  ble treaming cut timer, active usart send after it.
    ke_timer_set(APP_CUSTS_TEST_EVT, TASK_APP, 50);
//    if(!usart_sending)
//    {
//        app_usart_tx_process();
//    }
    return len;
}
修改完成之后,编译成功,下载到开发板之中。之后,通过手机随便下载的蓝牙调试助手,我习惯使用“蓝牙调试器”,在这里安利给大家,非常好用的一款调试器。选择蓝牙为NS_RDTSS,参数按我这个配置就可以了。配置好之后,点击右侧的加号进行蓝牙连接。

蓝牙连接成功之后,开发板的LED2即可亮起,说明连接成功了。接下来通过我设置的,蓝牙收到00打开LED1,01即关闭LED1,接下来看看效果。

LED1亮起,可以看到蓝牙收到00数据;

LED1关闭,可以看到蓝牙收到01数据;

这是从串口助手截取到的数据

最后,由于手机只有一个,而且视频录得比较潦草,我就不发社区了,发在了咱们21ic的群里了,最后,感谢21ic与国民技术的给力活动,让我可以接触到国民技术的新产品,非常不错,开发起来不是很麻烦,上手很快,也希望大家也来试一试哦,这是一款非常给力的蓝牙方案的开发板哦。



使用特权

评论回复
评论
yangjiaxu 2023-3-8 09:53 回复TA
@LZH休 :用手机的蓝牙调试助手发送的 
LZH休 2023-3-7 21:53 回复TA
请问用什么发送00数据呢 
沙发
6552918| | 2021-12-20 17:49 | 只看该作者
支持一下!!!!

使用特权

评论回复
板凳
yljon| | 2021-12-20 20:22 | 只看该作者
顶一下

使用特权

评论回复
地板
N32BLE| | 2022-1-20 08:28 | 只看该作者

感谢网友的使用分享,开发过程中有任何问题,随时发帖交流;也诚邀您参加年终活动,丰厚现金大奖等你来拿:https://bbs.21ic.com/icview-3194406-1-1.html

使用特权

评论回复
5
laocuo1142| | 2022-1-20 10:28 | 只看该作者
不错啊,板子也挺好

使用特权

评论回复
评论
N32BLE 2022-1-21 09:08 回复TA
欢迎测试使用国民技术蓝牙芯片。多多分享使用的体验和实验。 
6
onlycook| | 2022-1-21 10:30 | 只看该作者
不错,挺好的板子

使用特权

评论回复
7
carol888| | 2023-3-7 10:26 | 只看该作者
pack支持包,官方也提供了,双击一路next就可以。在官方提供的资料之中,选择第5项。,为什么我的没有这个包。

123.png (11.16 KB )

123.png

使用特权

评论回复
8
niceguy| | 2023-3-7 21:39 | 只看该作者
上面截图中的  N32WB03x_DFP.1.1.0.pack 不就是pack包吗

使用特权

评论回复
9
LZH休| | 2023-3-7 21:52 | 只看该作者
carol888 发表于 2023-3-7 10:26
pack支持包,官方也提供了,双击一路next就可以。在官方提供的资料之中,选择第5项。,为什么我的没有这个包 ...

\5-软件开发套件(Software Development Kit)\N32WB03x_SDK V1.3\projects\n32wb03x_EVAL\ble\rtdss

使用特权

评论回复
10
taony0321| | 2023-3-28 11:37 | 只看该作者
carol888 发表于 2023-3-7 10:26
pack支持包,官方也提供了,双击一路next就可以。在官方提供的资料之中,选择第5项。,为什么我的没有这个包 ...

我按照的时候回出现错误,不能识别文件格式,怎么回事?
C:\Keil_v5\ARM\PACK\.Web\ARM.ml-embedded-eval-kit-uc-api.pdsc: Error : cannot read file. Unrecognized file format.
C:\Keil_v5\ARM\PACK\.Web\AWS.AWS_IoT_Device_Defender.pdsc: Error : cannot read file. Unrecognized file format.
。。。

使用特权

评论回复
11
taony0321| | 2023-3-28 11:39 | 只看该作者
carol888 发表于 2023-3-7 10:26
pack支持包,官方也提供了,双击一路next就可以。在官方提供的资料之中,选择第5项。,为什么我的没有这个包 ...

我按照的时候回出现错误,不能识别文件格式,怎么回事?
C:\Keil_v5\ARM\PACK\.Web\ARM.ml-embedded-eval-kit-uc-api.pdsc: Error : cannot read file. Unrecognized file format.
C:\Keil_v5\ARM\PACK\.Web\AWS.AWS_IoT_Device_Defender.pdsc: Error : cannot read file. Unrecognized file format.
。。。

使用特权

评论回复
12
lijx1223| | 2023-4-4 15:22 | 只看该作者
请问:while(len){...} 这部分是在干吗?起什么作用?

使用特权

评论回复
13
七毛钱| | 2023-4-6 14:59 | 只看该作者
中国科技的发展搞的老美都要制裁我国的科技公司了

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

认证:嵌入式技术专家
简介:擅长电路设计、物联网产品开发、射频产品开发,喜欢打篮球,技术交流,欢迎各位来聊~

634

主题

2642

帖子

5

粉丝