485是通过两根差分线来传输数据,所以总线上要么是发送的数据,要么是接收的数据,所以标准两线485是属于半双工的工作模式。既然是半双工,发送的同时又接收数据,这个问题岂不是很奇怪,并且这样的实现又有什么意义。
先看下到底是基于什么场景我才想到去验证这么一个问题。标准485...
DK45
3年前 (2019-10-08) 5768℃
11喜欢
嵌入式实时操作系统运行中都会有一个系统时钟节拍,类似于人的心脏来驱动整个系统的运行。运行在arm cortex-m内核的单片机上的系统时钟用的最多的就是systick(属于arm内核带的)。使用stm32cubemx可以直接生成移植好的freertos工程,默认也会使用syst...
DK45
3年前 (2019-09-26) 6515℃
19喜欢
之前写过一篇非dma方式adc多通道采集的文档:https://www.eemaker.com/stm32cubemxadc.html
不过之前是基于stm32F1系列来操作的。当使用L0系列按照之前的操作步骤操作并没有成功,so只能用中断或者DMA的方式来实现。L0相比...
DK45
3年前 (2019-08-14) 7532℃
10喜欢
基于BLE应用加上freertos的应用,官方只提供了一个例子,针对自己的应用使用freertos具体需要添加哪些文件执行哪些步骤没有很明确的参考说明,so特此整理一份。
本篇硬件基于nrf52832-DK开发板。SDK基于V15.3版本。
添加freertos需要...
DK45
3年前 (2019-07-09) 6358℃
17喜欢
运行freertos系统的大部分都是资源有限的MCU,所以对于ram我们都要考虑尽量的节省,避免资源浪费,从而也可以针对项目选择性价比更好的mcu。
首先要配置freertos的堆(heap)空间,创建任务我们还需要为每个任务分配栈(stack)空间,那么针对freert...
DK45
3年前 (2019-07-01) 14875℃
33喜欢
在DAPLINK进行源码编译的时候,需要依赖python的环境,来执行一些工具脚本。那么问题就来了,马上python2支持就要到期了,到底我使用2还是3?
如果你还不清楚daplink的编译流程可以查看我之前的文章:https://www.eemaker.com/...
DK45
3年前 (2019-06-30) 4705℃
11喜欢
嵌入式实时操作系统一方面让mcu更高效的利用起来,另一方面让开发者可以把不同的软件功能模块进行解耦,更快捷清晰的开发整个项目。
但是用的好就是得力助手,用不好就是杀手。因为操作系统将会面临裸机下面更多的资源重入问题,以及内存分配,优先级分配,IPC通信等等需要谨慎...
DK45
3年前 (2019-06-25) 3392℃
3喜欢
stm32cubeMx 直接集成freertos,可以不需要自己手动移植只需要把freertos的选项勾选就可以。
但是生成的代码工程中,freertos暴露给用户的API接口并不是原生的freertos接口,是经过cmsis-rtos进行一次包装之后的。所以如果...
DK45
3年前 (2019-06-06) 7305℃
14喜欢
Block memory allocator(app_balloc)
该分配方式先定义固定元素个数的内存池,元素的长度也是固定的。之后每一次也只能分配一个元素的内存,假如内存池满了,就分配不了了。该分配方式不会产生内存垃圾碎片,但是也不能动态设定每一次获取的内存大小。需要...
DK45
3年前 (2019-06-03) 3235℃
8喜欢
使用nrfutil工具生成私钥和公钥
默认使用的加密算法是ECDSA_P256_SHA256生成私钥指令: nrfutil.exe keys generate private.key根据私钥生成公钥:nrfutil keys ...
DK45
3年前 (2019-05-05) 5472℃
6喜欢