搜索
bottom↓
回复: 1
打印 上一主题 下一主题

SYD8801片内外设配置【IO口反相器设置】【FLASH空间分配】 ...

[复制链接]

出0入0汤圆

跳转到指定楼层
1
发表于 2018-5-10 15:36:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
SYD8801是一款低功耗高性能蓝牙低功耗SOC,集成了高性能2.4GHz射频收发机、32位ARM Cortex-M0处理器、128kB Flash存储器、以及丰富的数字接口。SYD8801片上集成了Balun无需阻抗匹配网络、高效率DCDC降压转换器,适合用于可穿戴、物联网设备等。具体可咨询:syd-tek.com/

IO口反相器设置
SYD8801的PIN_CONFIG->GPIO_POL寄存器就是io口反相器控制寄存器,当设置某位的时候相应的IO口的反相器就会启动,也就是说如果启动反相器,IO的状态为低电平,芯片读取的寄存器将会读到1,寄存器说明如下:

                                                                                                                                                                                                                                                                    更新于:2017年7月21日

这里做一个车测试,主函数如下:


这里对BIT12和BIT13这两个按键不设置反相器,对BIT14和BIT15设置了反相器,同时这里还有中断功能,中断函数如下:

当没有中断发生的时候都会按键所在的IO口寄存器直接取反赋值给了LED,也就是如果不使用反相器的情况下按键没有按下则LED亮,反之熄灭,对于使用了反相器的情况正好相反,当按下按键发生中断的时候,相应的LED会闪烁10次。这里电路原理图如下:

实验现象如下:
在没有按下按键的情况下LED0和LED1亮,LED3和LED4熄灭,说明反相器真的起作用了,对于没有设置了反相器的KEY0和KEY2芯片读到的是1也就是IO口的状态高电平,对于设置了反相器的KEY2和KEY3情况则恰好相反,因为IO口的状态是高电平取反后为0,所以芯片读到的值为0.
对于中断,按下KEY0和KEY2相应的LED并没有马上闪烁,而要等到松开按键后LED才闪烁,也就是说这时候芯片识别的是IO口的上升沿中断,而对于设置了反相器的KEY2和KEY3情况则恰好相反,当按下了按键后LED马上会闪烁,而松开的时候没有任何的作用,也就是说这时候芯片识别的是这两个IO口的下降沿。
总结如下:
没有设置反相器(polarity设置为0):芯片读到的状态就是IO口的状态,芯片识别IO口的上升沿中断
设置反相器(polarity设置为1):芯片读到的状态是IO口的反状态,芯片识别IO口的下降沿中断

这里上传上本实验所提到的代码:ownload.csdn.net/detail/chengdong1314/9751264

FLASH空间问题
下面是SYD8801的存储器分配:

这里对FLASH空间的分配说明一下:
128KFLAH分出了96KB给代码使用,这里96KB代码又分为两个48KB,一个为用户运行的代码空间,一个为备份空间,下载程序的时候其实是把程序拷贝到备份空间,然后跳到备份空间运行,这时候运行代码空间和备份空间就交换了角色。
另外的32KB中有4KB作为4Ksetting,也就是我们下载进去的4Ksetting
剩下有28KB,其中又有4KB给用户使用,这4KB中1KB保存配对绑定信息,剩下的3KB给用户使用,也就是可以操作的3KBflash
最后还剩下24KB,这部分空间目前没有使用,保留,代码也可以使用。
因为Code RAM是48KB,所以数字电路在启动的时候只会从FLASH拷贝48KB的代码到内存中,所以用户代码最大是48KB,当然如果用户代码中做了从flash中拷贝代码到内存中运行的功能, 整体来看用户代码可以做到96KB+24KB=120KB的大小,但是因为Code RAM是48KB,所有如果进行代码拷贝工作的话,之前的代码就会被覆盖掉,所有代码拷贝要十分的小心了!
关于芯片内部flash的空间安排请看下图:



看门狗计数单位
手册中对看门狗的解释如下:

但是在代码中:

这是因为虽然看门狗的时钟来自于32.768Khz,但是在看门狗电路中做了256倍的分频工作,也就是说看门狗计数的时基是:32768/256=128Hz,那么看门狗的周期是:1/128s=0.0078125s=7.8125ms


出0入0汤圆

2
发表于 2018-5-11 08:23:38 | 只看该作者
敢问楼主做广告付钱了吗?
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-19 14:40

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表