LoRaWAN_stack移植笔记(四)__RTC】的更多相关文章

stm32相关的配置 由于例程使用的主控芯片为STM32L151C8T6,而在本设计中使用的主控芯片为STM32L051C8T6,内核不一样,并且Cube库相关的函数接口及配置也会有不同,所以芯片的驱动所以做修改. RTC 的配置 此例程中,RTC被当做定时器使用,用于定时执行任务. 例程中,RTC使用外部LSE的32.768Khz的晶振作为时钟源, 而在本设计中,使用内部LSI作为RTC的时钟源,需要重新设置RTC的分频参数,使得程序正常运行. 注意MCU内部的低速晶振往往误差很大,在使用时很…
stm32相关的配置 由于例程使用的主控芯片为STM32L151C8T6,而在本设计中使用的主控芯片为STM32L051C8T6,内核不一样,并且Cube库相关的函数接口及配置也会有不同,所以芯片的驱动所以做修改. SPI 的配置 SPI使用的是STM32的硬件接口-SPI1 MOSI MISO 可以看到例程中,对SPI接口进行了再一层的封装,封装如下: /*! * SPI driver structure definition */ struct Spi_s { SPI_HandleTypeD…
近日在阅读semtech的Lora-net/LoRaMac-node.此代码是LoRaWAN MAC层的node段的代码. 此代码中构建了一个定时器链表,此链表构建得非常的巧妙,现在和大家分享. 此定时器链表底层使用的是RTC的闹钟(Alarm)机制(将日历时间转换成时间戳时间),而非使用一个定时器产生一个固定的定时(比如1ms),然后定时刷新整个链表. 也就是说此RTC定时器并非产生一个嘀嗒定时器来定时检查定时器链表,而是直接根据链表你的表头来直接定时,一步到位. 用RTC的方法相比较嘀嗒定时…
和硬件相关的问题 TCXO 的使用 根据SX1276数据手册, 如果使用TCXO,则需要配置RegTcxo寄存器为0x19,代码如下 ``` c void SX1276SetTcxoConfig(void)//此函数为自定义的 { SX1276Write( REG_TCXO, 0x19 ); //设置TCXO } //在初始化中调用 void SX1276Init( RadioEvents_t *events ) { ... SX1276SetTcxoConfig(); ... } ``` 否则…
以下的代码适用于LoRa sx1276点对点的通讯,纯粹的考虑在非发射模式下即为接收模式 配置sx1276的射频参数,并且切换到接收模式 //bandwidth [0:125 1:250 2:500] void set_private_LoRa_para(uint32_t freq, uint8_t datarate_index, uint8_t bandwidth,bool rxContinuous) { uint16_t timeout = 5;//DR_0 DR_1 DR_2 uint8_…
stm32相关的配置 由于例程使用的主控芯片为STM32L151C8T6,而在本设计中使用的主控芯片为STM32L051C8T6,内核不一样,并且Cube库相关的函数接口及配置也会有不同,所以芯片的驱动所以做修改.另外例程中对STM32库函数的再一次封装的方法也非常值得学习. GPIO 的配置 GpioInit( &obj->Tx, tx, PIN_ALTERNATE_FCT, PIN_PUSH_PULL, PIN_PULL_UP, GPIO_AF0_USART1 ); 例程中可以看到,对I…
python3.4学习笔记(四) 3.x和2.x的区别 在2.x中:print html,3.x中必须改成:print(html) import urllib2ImportError: No module named 'urllib2' 在python3.x里面,用urllib.request代替urllib2 import threadImportError: No module named 'thread'在python3.x里面,用_thread(在前面加一个下划线)代替thread 在2…
本文转载自:https://blog.csdn.net/zijie_xiao/article/details/50740950 tslib移植笔记(1)2016-04-25 tslib背景[摘自百度]:​ 在采用触摸屏的移动终端中,触摸屏性能的调试是个重要问题之一,因为电磁噪声的缘故,触摸屏容易存在点击不准确.有抖动等问题. Tslib是一个开源的程序,能够为触摸屏驱动获得的采样提供诸如滤波.去抖.校准等功能,通常作为触摸屏驱动的适配层,为上层的应用提供了一个统一的接口. 系统环境: Distr…
来自:http://www.openedv.com/posts/list/27697.htm STemWin5.22移植笔记 网上关于emwin的资料很少,我在移植的时候查了很多资料,对我一个感觉是好乱,有的代码改动的太多,这会让像我这种菜鸟无从下手,并且来源很乱,这让我决心写下这个笔记,来让新手快速入门emwin,高手当然飘过哦,这只限于我这种菜鸟罢了. emWin是segger公司出的一款图形化界面,非常好看,大家所熟悉的ucGUI也是这个公司开发的,ucGUI是XP的,而emWin是win…
前面三篇讲了MEF的基础和基本到导入导出方法,下面就是见证MEF真正魅力所在的时刻.如果没有看过前面的文章,请到我的博客首页查看. 前面我们都是在一个项目中写了一个类来测试的,但实际开发中,我们往往要采用分层架构,就拿最简单的三层架构来说吧,我们通常把业务逻辑写在DLL中,现在就来写一个例子,看看如何在不编译整个项目的情况下,轻松的实现扩展.先透露一下,我们只要添加一个DLL就可以了. 这里就以银行为例子吧,首先新建一个控制台项目,还叫MEFDemo吧,然后建一个类库写接口,然后再建一个类库实现…