自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 问答 (1)
  • 收藏
  • 关注

原创 CH32V307在RT-Thread平台使用BC26模块进行MQTT无法连接问题

我用串口测试了一下bc26模块,在用mqtt固件连接这个服务器时,在QMTOPEN后服务器会在两秒内断开连接,使用模块厂商提供的服务器的话会有10秒左右的时间来进行下一条指令QMTCONN,所以这个mqtt测试服务器应该有点问题。这是第一个。然后就是我使用的paho_mqtt软件包中的在连接过程中的等待回应时间,我全部扩大了一倍,因为在连接上后会出现等待超时的打印。并且我连接的服务器换成了模块厂商提供的。目前连接还是比较稳定的,但是也会出现偶尔掉线的状况,我这次的应用倒是对传输实时性和稳定性要求并不高。

2023-04-25 11:20:12 786

原创 ch32v307使用RT-Thread的pahomqtt软件包出现mqtt_start后没反应的问题记录

函数这里出现问题,返回的tid为0,线程根本没有创建成功。进去函数之后发现是在。

2023-03-30 15:00:43 360

原创 快速移植LVGL到iMX6ULL开发板

该LCD触摸屏实际是24bpp的,对于 24BPP,硬件上为了方便处理,在 Framebuffer 中也是用 32 位来表示,效果跟 32BPP 是一样的。对于 32BPP,一般只设置其中的低 24 位,高 8 位表示透明度,一般的 LCD都不支持。的话非常慢(我这边非常慢),我们可以单独点击目录中的那两个文件夹去下载对应的版本。的配置要为1,下面“/dev/fb0”根据自己的屏幕实际情况更改。两个文件夹放入该文件夹,从图中可知,还需要将下载的。参数,然后将下面鼠标icon的编译注释掉。

2023-01-30 20:12:19 1160 4

原创 ARM处理器的异常中断处理

这些众多的“中断源”,汇集到“中断控制器”,由“中断控制器”选择优先。CPU 在运行的过程中,也会被各种“异常”打断。⚫ UART 发送完数据、收到数据。级最高的中断并通知 CPU。⚫ ADC 转换完成。

2022-12-30 14:02:10 341

原创 ARM的内存管理单元MMU及存储访问

如果该虚拟地址对应的地址变换条目不在TLB中,CPU从位于内存中的页表中查询对应于该虚拟地址的地址变换条目,并把相应的结果添加到TLB中。这样,当CPU下一次又需要该地址变换条目时,可以从TLB中直接得到,从而使地址变换的速度大大增加。如果系统中数据TLB和指令TLB是分开的,在取指令时,从指令TLB查找相应的虚拟地址,对于其他的内存访问操作,从数据TLB中查找相应的虚拟地址。==在基于ARM的嵌入式系统中,存储系统通常是通过系统控制协处理器CP15完成的。当ARM处理器请求存储访问时,首先在TLB(

2022-11-18 10:46:57 630

原创 i.MX6ULL移植NXP官方Linux内核imx_5.4.47_2.2.0

我们使用构建的根文件系统启动以后会发现,输入命令的时候命令行前面一直都是“#”,如果我们进入到某个目录的话前面并不会显示当前目录路径。使用百问网提供的4.9.88版本的设备树,也就是6ullPRO开发板的设备树文件。(2)下载有百问网提供的gitee上的修改过的内核,然后reset到原来的分支即可。我们再来看看官方的dts,可以看到,真正描述官方evk板子外设的设备树文件是。从emmc启动根文件系统,然后用tftp下载内核和设备树,bootz启动。然后将老版本的设备树复制过来,然后编译。

2022-11-08 22:52:33 1433

原创 使用buildroot2022.02.06制作根文件系统

但是我们一般都不会使用 buildroot 下载的 linux 内核和 uboot,因为 buildroot 下载的 linux 和 uboot官方源码,里面会缺少很多驱动文件,而且最新的 linux 内核和 uboot 会对编译器版本号有要求,可能导致编译失败。此选项配置我们最终制作的根文件系统为什么格式的,对于 I.MX6U 来说此选项不用配置,因为我们是通过 Mfgtool 工具将根文件系统烧写到开发板上的 EMMC/SD 卡中,烧写的时候需要自己对根文件系统进行打包。进入官网,直接下载最新的。

2022-11-08 20:35:11 484

原创 i.MX6ULL移植NXP官方uboot2020.04_5.4.47_2.2.0

大家可能听过 DM9000 这个网络芯片,在一些没有内部 MAC 的 CPU 中,比如三星的 2440,4412 等,就会采用 DM9000 来实现联网功能。把网线连接至 NET2 接口,执行 DHCP 命令,会发现一直多次获取,直到最后提示 Abort 异常退出,并未能成功获取到 IP 地址,此时可以根据芯片手册或者逻辑分析仪来确认复位时序等操作是否符合芯片要求,这里由于之前调试过此芯片知道 需要进行多次芯片软复位才可以,参考下述修改来修改 phy 函数,发送复位命令到 lan8720a 芯片。

2022-10-30 22:44:16 1768

原创 LINUX内核启动大致流程笔记

head.S。LINUX内核启动大致流程笔记

2022-10-20 11:22:29 489

原创 ARM处理器的寄存器

当执行子程序调用指令BL时,R14会备份R15(程序计数器PC)的内容,以便子程序结束后能使程序正确地返回。计算机中的堆栈主要用来保存临时数据,局部变量和中断/调用子程序程序的返回地址。程序中栈主要是用来存储函数中的局部变量以及保存寄存器参数。堆栈是计算机存储数据的一种数据结构,SP的作用就是指示当前要出栈或入栈的数据,并在操作执行后自动递增或递减。虽然ARM处理器共有37个寄存器,但是根据处理器的运行模式,程序能够真正使用的只是其中的18个或者17个。两种或两种以上运行模式所共享的寄存器叫做基础寄存器。

2022-10-11 13:44:02 753

原创 电子产品量产工具-学习笔记(5)业务部分

根据配置文件生成界面,循环读取输入数据,对不同输入事件进行不同处理,找到有输入的那个button,执行button 的onclicked函数。很明显,fopen还是调用了open的,增加了io缓冲区。计算第一个button的起始点坐标,要与屏幕边界有一定裕量,因为经过上面的计算,现在的width和height实际是比xres,yres小的,相减然后居中就除以2得到起始点坐标。之前的文字大小计算方法如果名字较长的话字会非常小,这里我们取名字最长的那个button的名字,来适配字体大小,具体见代码 的注释。

2022-10-10 13:58:39 280

原创 电子产品量产工具-学习笔记(4)按钮及页面抽象

通过init_button函数初始化button的状态,名字,region,以及on_draw 和on_clicked ,如果传入了on_draw和on_clicked参数,函数指针就指向传入的函数,如果没有传入,就指向默认的函数。一个页面需要名字,具体的业务,以及next指针,串联所有页面,之后方便在链表中找到对应page。一个button应该有名字(显示的text)、字体的大小、button的状态、button的region以及两个函数指针分别为画出button和点击之后要做的事。

2022-10-09 16:36:11 227

原创 电子产品量产工具-学习笔记(3)字体显示部分

用Font_bitmap 表示一个字符的相关信息,有它的region、freetype的origin原件,表示字符的位图的buffer。注册完底层的style之后,可以根据name来选择作为默认的style,就是遍历链表,找到对应的那个节点,并调用那个节点的init函数。用Font_style 表示字体显示的方式,可以是普通点阵也可以是用freetype的矢量字体,这里使用freetype。该函数默认生成的位图是 FT_RENDER_MODE_NORMAL 类型,即 RGB888。

2022-10-09 13:29:12 412

原创 电子产品量产工具-学习笔记(2)输入部分

百问网linux项目电子产品量产工具学习笔记2,输入部分

2022-10-08 16:53:39 245

原创 电子产品量产工具-学习笔记(1)总体结构及显示部分

百问网linux项目电子产品量产工具学习笔记

2022-10-08 10:55:14 655

原创 qt creator在高分辨率笔记本上控件运行显示不全的问题解决方法

qtcreator运行后控件显示不全? 要这样搞一下

2022-06-21 12:44:15 1477 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除