芯片开放社区
直播中

袁宏

12年用户 24经验值
擅长:嵌入式技术,控制/MCU
私信 关注

【平头哥CB6121 BLE及BLE Mesh评估板试用连载】GPIO

本帖最后由 jf_11671167 于 2021-10-12 10:10 编辑

`感谢电子发烧友william hill官网 提供的这块CB6121蓝牙开发板的试用。晒上一张收到的板子的靓照,板子很小巧简洁,贴片工艺也很漂亮。
收到板子除了心情激动与兴奋之外当然第一步是去网上下载相关资料,学习这个板子怎么使用并且让这个板子跑起来啦!
附上资料下载链接
https://occ.t-head.cn/vendor/detail/index?id=648914921458761728&vendorId=3706716635429273600&module=4不得不说CB6121这块开发板的资料做的真的很详细很全呢。对我而言美中不足的是这块板子示例程序是用gcc-ARM-none-eabi-这编译器呢,而我开发单片机的程序的时候还是习惯用MDK呢。既然如此只能硬着头皮上了。

把开发环境装好,编译了一下ble_sdk_v1.1.1applicationsdriver_examplesdrivergpio这个例程,下载到板子上运行,串口打印出了信息,提示把gpio pin14的电平从高电平变成低电平。心里有点小惊喜,说明这个板子在我手上算是第一次跑起来了。看了下开发板上正好有P14这个按键,本能的按了下没反应。然后读了一下这个例程的代码,主要是例程下的app_main.c文件,理解了这个例程的原理,这个例程是一个GPIO的中断测试例程,当GPIO_PIN_14检测到下降沿的时候串口就输出gpio 测试成功。可是为什么我按键P14按键按下的时候板子没有任何的反应呢。这个时候一定要稳住心态,打开板子的原理图看了一下,发现P14这个按键一端是接地的,一端直接连接到单片机的IO14口另外接了一个电容到地。也就是说这个按键没有连接上拉电阻。用示波器测量了一下IO14的电平,果然是低电平。难怪我按下按键P14没反应呢。另外看了一下原理图发现IO14口引出到P3这个端子上了。于是找了一根杜邦线,一端连接3.3V,一端连接IO14,这个时候IO14上的电平就是一个高电平了,接着把杜邦线的一端拔开,这个时候IO14上的电平变成了低电平,产生了一个下降沿。这个时候串口打印出了测试GPIO成功的信息了。
哈哈,,当然这个实验到现在还没有结束,重新读了一下代码,app_main.c第54行把IO14口设置成了下拉了。修改代码,把IO14口设置成上拉。重新编译下载运行程序,按下按键P14,这个时候串口也如愿打印出了自己预想期待的信息了。板子算是正常的跑起来了,开心。接下来可以接着玩别的了。
` QQ截图20200814150312.png QQ图片20200814150621.jpg

更多回帖

发帖
×
20
完善资料,
赚取积分