- 博客(13)
- 收藏
- 关注
原创 调试STM32F103RCT6的DMA发送
从这次调试得出的经验是,以后在调试某个模块之前需要研读STM32的参考手册,不能总寄希望于灵光一现,不能总是寄希望于网络上的例程,不然在遇到问题时,会抓瞎,茫然失措,甚至怀疑人生。STM32参考手册DMA部分也没有太多,13页。之后灵光一现,可能是启动下次发送时,在写一些寄存器时要关闭DMA,我也不知道这样的灵光怎么来的,也许是看过一些文字?调试STM32的DMA接收和发送时,遇到了一个问题,就是只能发送第一次,之后再次启动DMA发送,就发不出去了,接收是正常的,能够重新启动DMA接收。
2023-03-16 09:13:09
193
原创 百问网7天物联网smarthome学习笔记7之开发板与阿里云物联网平台设备通信
阿里云物联网平台服务器搭建官网https://www.aliyun.com/,注册账号在控制台找到物联网平台在物联网平台开通公共实例在公共实例的设备管理选择产品创建产品添加设备MQTTX与阿里云物联网平台设备通信将网站中的MQTTX连接参数页中的clientid、username、password、port等填入MQTTX的新建连接页面中,建立连接MQTT x订阅物联网平台的产品topic物联网平台的设备发布topic消息MQTT x向设备发布topic2的消息业务逻辑:1
2022-05-12 09:40:05
388
原创 百问网7天物联网smarthome学习笔记6之MQTT原理
端口的作用一个电脑上两个浏览器访问同一个网站(服务器),浏览器发出的数据里,源IP相同,目的(服务器)IP,目的端口相同,唯有源端口不同。一个电脑上两个软件:SSH client和浏览器访问另一个网站,这两个软件发出的数据里,目的IP相同,但是端口号不同,SSH client 访问ssh服务器,端口是22;浏览器访问http服务器,端口是80。路由器路由器连接私网和公网,私网中使用私网IP地址,公网中使用公网IP地址。私网中源设备往外发送数据时,路由器将数据中源设备的IP和端口换成公网IP和
2022-05-12 09:39:00
463
原创 百问网7天物联网smarthome学习笔记5之建立IO设备和网络设备
半主机模式半主机模式是ARM架构中的概念半主机模式中的printf和scanf需要开发者重定向底层IO函数fputc和fgetc如果不使用半主机模式,则需要移除所有的半主机模式关联的函数后,再去重定向fputc和fgetc半主机模式可参考手册《Semihosting for AArch32 and AArch64 》MicrolibMicrolib 是一个比C库小很多的微库,对于IO功能定义了__stdout 和 __stdin,用户重定向fputc和fgetc的时候无需再重新定义__s
2022-05-12 09:36:45
372
原创 百问网7天物联网smarthome学习笔记4之移植freertos
移植freertos资源获取进入官网www.freertos.org获取源码Download FreeRTOS获取参考手册 The FreeRTOS Reference Manual移植步骤将源码目录FreeRTOS-LTS\FreeRTOS\FreeRTOS-Kernel拷贝到工程目录SmartHome\4_MiddleWare下新建FreeRTOSConfig.h,并根据官方参考和实际需求添加修改1、使用静态方式创建任务时需要将宏configSUPPORT_STATI
2022-05-12 09:34:40
142
原创 百问网7天物联网smarthome学习笔记3之按键消抖
main函数之前的执行 IMPORT __main IMPORT SystemInit LDR R0, =SystemInit BLX R0 LDR R0, =__main BX R0 ENDP其中IMPORT:表明后面要调用的函数是一个外部文件的函数LDR:加载指令BLX:
2022-05-12 09:31:35
406
原创 百问网7天物联网smarthome学习笔记2之cubemx创建工程
1、创建符合自己风格的工程需要准备以下文件:处理器的启动文件:startup_stm32xxx.s,这个文件在Driver\STM32xxx_HAL_Driver\Inc\stm32f1xx_hal_conf_template.h处理器的库文件:STM32XXX_HAL_DriverCMSIS标准接口文件有:startup_stm32xxx.s system_stm32xxx.c system_stm32xxx.h处理器的中断文件:stm32xxx_it.c/h,在Projects下任意一个例
2022-05-12 09:28:41
373
原创 百问网7天物联网smarthome学习笔记1之RTOS引入
我现在的公司是物联网相关的公司,所以就学习了这款物联网开发板,比较偏基础入门的一款开发板,但是资料,视频等还是很多的。文档和源码资料在百问网的资料下载中心stm32-mini开发板页面中,目前是可以免费下载到的,视频是需要付费的,视频分为基础班和提高班。基础班最重要的手册是100ASK_STM32F103_MINI用户手册V1.0.pdf,该手册主要是基于HAL库的,目前看到了第9章,讲了相关软件安装,介绍了资料是如何下载的,包括st原厂资料,比较了四种开发模式,基于寄存器的开发方式可以放到后续拔高,相
2022-05-11 09:38:09
173
原创 串口调试记录
串口调试记录STM32F407 FREERTOS 串口2 空闲中断 + DMA接收1、解bug,现象,PC发来一帧报文,串口在空闲中断中只能收到一个字节的空字符。原因:DMA1时钟使能语句放在了之后的串口3初始化中,所以串口3是正常的,串口2不正常,没有使能DMA1时钟,就去配置DMA。2、解bug,现象,PC发一条报文,下位机要经过大概一秒钟才给回复,并且PC端频繁的发送,会导致任务不运行。原因:没有配置DMA收发中断的优先级,DMA收发中断的优先级应该低于任务的优先级,而其默认优先级应该是比
2022-01-26 16:45:18
233
原创 2021-04-24
oled上基于emwin显示图片的一种方式:用BmpCvtST.exe打开要显示的图片,在Image中进行设置,Covert to BW,scale设置图片大小,如需要反色,选择Invertsave as 保存类型选择“C”bitmap file,将该c文件添加进工程,使用图片显示函数GUI_DrawBitmap(&bmhhhh, 0, 10);显示效果:...
2021-04-24 18:25:28
116
原创 2021-02-09
记录《FREERTOS 实时内核实用指南》各个demo的目的、涉及到的概念example1 演示创建并启动两个任务,空循环实现最原始的延迟,书中还演示了在一个任务中创建另一个任务。 概念:任务,任务函数,任务句柄,运行态(Running),删除当前任务 任务函数原型必然是如下形式: void hanshuming(void* pvParameters); 创建任务函数: portB...
2021-02-09 10:48:34
361
原创 2021-02-09
前段时间看了卢有亮的《嵌入式实时操作系统uC/OS原理与实践第二版》这本书,写一下书评吧,通过这本书了解了ucos的一些API函数,卢老师把这些API函数进行了简化,比如删掉了一些条件编译,剔除了一些影响初学者理解的代码,突出了作者要讲的东西,整体来说偏理论讲解,具体应用讲的少,另外书中有一些图片放错了,也有一些明显的笔误。后续有时间了再读一些任哲的《嵌入式实时操作系统uC/OS原理及应用第四版》,目前读了前两章,惊喜的发现竟然讲了makefile,从前两章看风格比较偏向于实践应用,后面章节中没
2021-02-09 10:45:16
110
原创 2021-01-25
第一篇博客为了记录,为了分享,记录我曾经来过,分享一些不是那么私密,也不是那么公开的事。这应该很有意思吧?什么是家?是那个你一周不洗袜子都不会感到难堪的地方。
2021-01-25 09:55:55
82
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅