LoRaWAN_stack移植笔记(四)__RTC
stm32相关的配置
由于例程使用的主控芯片为STM32L151C8T6,而在本设计中使用的主控芯片为STM32L051C8T6,内核不一样,并且Cube库相关的函数接口及配置也会有不同,所以芯片的驱动所以做修改。
RTC 的配置
此例程中,RTC被当做定时器使用,用于定时执行任务。
例程中,RTC使用外部LSE的32.768Khz的晶振作为时钟源,
而在本设计中,使用内部LSI作为RTC的时钟源,需要重新设置RTC的分频参数,使得程序正常运行。
注意MCU内部的低速晶振往往误差很大,在使用时很大可能会造成模块接收不到下行包,因为接收对接收窗口的时间要求比较严格,所以如果是对下行要求比较严格的环境,建议不要使用内部晶振。
根据Fck_spre = Frtcclk/(PREDIV_S+1)/(PREDIV_A+1)
例程中RTC的工作频率为32.778/(3+1)/(3+1) = 2.048Khz,
而内部晶振的频率约为37Khz,故PRVEDIV_S和PREDIV_A的值需要改变。
37/2.048 ~= 18;
数据手册里面有这样一句话:
Note: When both prescalers are used, it is recommended to configure the asynchronous
prescaler to a high value to minimize consumption.
所以:18 = 9*2;故设置PREDIV_A = 8,PREDIV_S = 1;
由于
37/18 ~= 2.055
1/2.055 ~= 0.486618
故此处的宏定义需要稍作修改
 /*!
 * RTC Time base in ms
 */
#define RTC_ALARM_TICK_DURATION                     0.486618      // 1 tick every 466us
#define RTC_ALARM_TICK_PER_MS                       2.055           // 1/2.055 = tick duration in ms ((37/(8+1)/(2+1)) = 2.055Khz)
												
											LoRaWAN_stack移植笔记(四)__RTC的更多相关文章
- LoRaWAN_stack移植笔记(三)__SPI
		
stm32相关的配置 由于例程使用的主控芯片为STM32L151C8T6,而在本设计中使用的主控芯片为STM32L051C8T6,内核不一样,并且Cube库相关的函数接口及配置也会有不同,所以芯片的驱 ...
 - LoRaWAN移植笔记(一)__RTC闹钟链表的实现
		
近日在阅读semtech的Lora-net/LoRaMac-node.此代码是LoRaWAN MAC层的node段的代码. 此代码中构建了一个定时器链表,此链表构建得非常的巧妙,现在和大家分享. 此定 ...
 - LoRaWAN_stack移植笔记(一)--RF硬件相关
		
和硬件相关的问题 TCXO 的使用 根据SX1276数据手册, 如果使用TCXO,则需要配置RegTcxo寄存器为0x19,代码如下 ``` c void SX1276SetTcxoConfig(vo ...
 - LoRaWAN_stack移植笔记(七)_数据包的接收发送
		
以下的代码适用于LoRa sx1276点对点的通讯,纯粹的考虑在非发射模式下即为接收模式 配置sx1276的射频参数,并且切换到接收模式 //bandwidth [0:125 1:250 2:500] ...
 - LoRaWAN_stack移植笔记 (二)_GPIO
		
stm32相关的配置 由于例程使用的主控芯片为STM32L151C8T6,而在本设计中使用的主控芯片为STM32L051C8T6,内核不一样,并且Cube库相关的函数接口及配置也会有不同,所以芯片的驱 ...
 - python3.4学习笔记(四) 3.x和2.x的区别,持续更新
		
python3.4学习笔记(四) 3.x和2.x的区别 在2.x中:print html,3.x中必须改成:print(html) import urllib2ImportError: No modu ...
 - tslib移植笔记(1)【转】
		
本文转载自:https://blog.csdn.net/zijie_xiao/article/details/50740950 tslib移植笔记(1)2016-04-25 tslib背景[摘自百度] ...
 - STemWin5.22移植笔记【转】
		
来自:http://www.openedv.com/posts/list/27697.htm STemWin5.22移植笔记 网上关于emwin的资料很少,我在移植的时候查了很多资料,对我一个感觉是好 ...
 - C#可扩展编程之MEF学习笔记(四):见证奇迹的时刻
		
前面三篇讲了MEF的基础和基本到导入导出方法,下面就是见证MEF真正魅力所在的时刻.如果没有看过前面的文章,请到我的博客首页查看. 前面我们都是在一个项目中写了一个类来测试的,但实际开发中,我们往往要 ...
 
随机推荐
- 掌握简单的Makefile文件编程
			
Makefile描述整个程序的编译.链接规则 其中还包括了工程中用到的那些源文件及需要产生的目标文件 1)Makefile编程规则 目标(唯一):依赖(可多个) 命令... 伪目标 .PHONY:cl ...
 - csv文件数据导出到mongo数据库
			
from pymongo import MongoClientimport csv# 创建连接MongoDB数据库函数def connection(): # 1:连接本地MongoDB数据库服务 co ...
 - 编译AMQP-CPP
			
1 cd ./AMQP-CPP/examples/boost$ 2.cmake . 提示boost版本太低, 首先要编译生成boost安装工具bjam进入boost目录执行:./bootstrap. ...
 - 入职两个月,WPF开发感想
			
1 .新工作,新开始 2.WPF初次接触以及学习MVVM开发模式 3.后台数据操作,ORACLE 存储过程(边做边学) 4.总结 4.1工作开发中的小问题 ,遇到的坑: 4.2 解决的问题,学校到的 ...
 - 个人永久性免费-Excel催化剂功能第83波-遍历文件夹内文件信息特别是图像、音视频等特有信息
			
在过往的功能中,有体现出在Excel上管理文件的极大优势,在文件的信息元数据中,有图片和音视频这两类特有的属性数据,此篇对过往功能的一个补充,特别增加了图片和音视频信息的遍历功能. 使用场景 在文件管 ...
 - 编写Django项目并使用uwsgi和nginx部署在Linux平台
			
内容转载自:我自己的博客地址 这是花费了一个月的时间摸索整理出来的一份总结.分享出来一方面是给新人一个借鉴,另一方面对自己也算是个备份. --- *** 整个Django项目: ├── example ...
 - <<Modern CMake>> 翻译 1. CMake 介绍
			
<<Modern CMake>> 翻译 1. CMake 介绍 人们喜欢讨厌构建系统. 仅仅观看 CppCon17 上的演讲,就可以看到开发人员因为构建系统而闹笑话的例子. 这 ...
 - Spring方法级别数据校验:@Validated + MethodValidationPostProcessor
			
每篇一句 在<深度工作>中作者提出这么一个公式:高质量产出=时间*专注度.所以高质量的产出不是靠时间熬出来的,而是效率为王 相关阅读 [小家Java]深入了解数据校验:Java Bean ...
 - 仿制shazzam的简单功能,将hlsl转换为WPF中的ShaderEffect
			
(此文章只是在对WPF的Effect产生兴趣才稍微研究了一点后面的知识;需要了解更多可参考https://archive.codeplex.com/?p=shazzam的源代码以及WPF基础知识) 1 ...
 - 【Demo 1】基于object_detection API的行人检测 2:数据制作
			
项目文件结构 因为目录太多又太杂,而且数据格式对路径有要求,先把文件目录放出来.(博主目录结构并不规范) 1.根目录下的models为克隆下来的项目.2.pedestrian_data目录下的路径以及 ...