
ARM
文章平均质量分 83
北纬 36°
三人行必有我师焉
tel:15225187806
qq:632233021
展开
-
在rk3328上从零构建ubuntu16.04系统系列(1):sdk的环境配置和编译与uboot的网卡驱动配置
当前的项目是基于RK3328的硬件方案,安装ubuntu16.04系统,现在基本上告一段落,现在将这个过程记录下来,以备以后查阅,今天先描述一下怎么解决uboot网卡驱动的问题。 说是从零开始,其实是不可能的,所有的项目都是站在巨人的肩膀上做的一些小补丁,这个项目也不例外,我使用的是firefly提供的开发板和他们的sdk,写到这里,不得不由衷的称赞一下firefly,他们是国内为数不多的无偿提供sdk的厂家,不管你买不买他们的板子,所有的sdk都可以在他们的官网上下载,这一点做的无可挑剔...原创 2021-10-10 21:38:24 · 3097 阅读 · 2 评论 -
openharmonyos1.1.0 liteos-a内核学习记录(一)
一、汇编部分具体路径为:1、多核处理器:arch/arm/arm/src/startup/reset_vector_mp.S;2、单核处理器:arm/arm/arm/src/startup/reset_vector_up.S汇编看的不是特别明白,但是备注写的还是比较清楚的,根据备注的意思主要是做了以下工作:(1)、reset相关的寄存器,做一些CPU早期的配置(2)、计算cpu虚拟地址与物理地址的线性映射关系(3)、配置MMU相关参数(4)、物理地址与虚拟地址之间映射页表的创原创 2021-09-09 17:32:50 · 809 阅读 · 1 评论 -
全志V3S平台中uboot向内核传递simplefb参数流程解析
最近一段时间在荔枝派zero上调试simplefb进行显示视频和图片,经过一段时间的研究,基本上搞清楚了simplefb参数的设置、uboot和kernel之间关于参数的传递流程,在这里记录一下,以备查阅。首先描述一下simplefb使能和参数设置的流程:1、在uboot中设置参数;2、内核设备树中设置simplefb的相关节点;3、uboot读取内核设备树后,找到和simplefb相关的节点,根据预先设置的参数信息进行修改。下面具体看一下在uboot中simplefb参数的设置,如下图所示:...原创 2021-01-12 15:26:49 · 3337 阅读 · 0 评论 -
在nuc972上实现I2C接口数字电位器isl95311的驱动
当前的这个项目需要使用一个数字电位器,型号选的是isl95311,控制接口是I2C,折腾了两天,终于实现了这个电位器的驱动,今天记录一下这个过程,以备以后查阅。 1、首先在nuc972的设备文件中增加isl95311相关的设备信息,在内核中的路径为/arch/arm/mach-nuc970/dev.c,如下所示:static struct i2c_board_info __...原创 2019-08-22 22:43:40 · 1864 阅读 · 0 评论 -
在uboot中初始化nuc972的GPIO初始状态
当前的项目中,需要使用nuc972的GPIO去控制短波电台的PTT,而在实际的使用中发现,NUC972从上电到程序运行,GPIO的默认值一直是高电平,而我是用高电平控制短波电台发射,这就比较麻烦了,系统从上电到程序运行,少说也得好几秒的时间,而且在调试期间,是用的NFS挂在的方式,启动时间更长,在这么长的时间里,短波电台一直处于发射状态,怎么说也不太合适,而且我也不想修改硬件,所以只...原创 2019-08-13 22:54:23 · 2566 阅读 · 0 评论 -
在NUC972上实现websocket客户端
由于项目中要用到websocket协议实现一个websocket客户端,而目前开源的用C语言开发的websocket库貌似只有libwebsockets,所以决定使用这个库做开发。websocket的具体协议和库的移植就不记录了,很多前辈已经描述的很清楚了,今天主要是记录一下libwebsockets的使用流程。 websocket协议还是比较复杂的,不过使用库了以后,就相对简单了...原创 2019-06-25 21:41:06 · 2028 阅读 · 0 评论 -
在NUC972上利用pjsip实现VOIP网关
上次在NUC972上移植好了pjsip库后,实现了一个简单的VOIP网关的功能,由于前一段时间再忙别的事情,没有来得及整理,今天忙里偷闲,总结一下,废话少说,直接步入正题。 pjsip库里面提供了好多例程,实现简单的VOIP功能还是挺简单的,主要包含以下几个部分:1、初始化,废话少说,直接上代码:int my_pjsua_init(void){ pjsua_acc_...原创 2019-04-12 14:37:42 · 1165 阅读 · 0 评论 -
在NUC972上移植pjsip库并使用PJSUA测试VOIP电话(二)
昨天我已经把pjsip工程相关的库移植好,今天开始使用库里面自带的测试程序进行测试,在这之前需要搭建一个测试环境,我使用的是minsipserver服务器的window版本,在win10上搭建一个服务器。先简单的说一下搭建流程吧:1、安装后进入主界面,如下图所示:2、进入系统配置,配置服务器相关信息,如下图所示:只需要配置一下IP地址,端口号都是默认的,不需要改变,这样服务器相...原创 2019-02-21 10:52:13 · 2311 阅读 · 1 评论 -
在NUC972上移植pjsip库并使用PJSUA测试VOIP电话(一)
近段时间,突然对VOIP电话有了兴趣,想在NUC972的板子上测试一下VOIP电话,经过查阅资料,了解到VOIP电话是基于sip协议做的,所以对sip这一块儿进行了了解。目前开源的sip库有几种,我选用了pjsip这个库,这也是别人给我推荐的,具体的这几种库的区别说实话我也不清楚,不过目前pjsip的口碑应该还是比较好的。废话不说那么多了,今天主要说一下pjsip在NUC972上的移植。首先下...原创 2019-02-20 17:28:05 · 1854 阅读 · 4 评论 -
NUC972触摸屏驱动移植过程分析(二)
今天继续分析NUC972的触摸屏驱动移植过程,上一节主要分析了触摸屏需要数据,今天来分析一下驱动部分,上一节我们已经了解了触摸屏一般有I2C接口和gpio接口,所以触摸屏既是一个I2C设备,也是一个input设备,linux中把触摸屏整体归为input设备,在input驱动中又包含了I2C驱动和gpio按键驱动,今天首先分析一下I2C驱动部分。I2C驱动在linux内核中整的还是挺复杂的,按我...原创 2019-01-23 16:35:05 · 1927 阅读 · 0 评论 -
NUC972触摸屏驱动移植过程分析(一)
因为下一个项目可能会用到触摸屏,所以这段时间对触摸屏的驱动的移植进行了研究,今天正好有机会,谈谈移植过程。其实基于开发板对触摸屏驱动进行移植,需要做的工作并不是太多,因为大部分工作开发板的供应商已经提供好了,但是用起来总是不尽人意,所以需要进一步优化,废话少说,步入正题。首先看一下硬件电路,如下图所示:开发板上使用的是TSC2007作为驱动触摸屏(电阻屏)的驱动芯片,没有使用nuc...原创 2019-01-16 23:13:18 · 2775 阅读 · 0 评论 -
将移远通信的EC20驱动移植到NUC972上
根据公司明年的开发计划,下面的项目可能会用到4G传输,所以在某宝上买了一个4G模块,上海移远通信的EC20系列,经过几天的研究,基本上搞明白了这玩意儿是怎么用的,下面分享一下过程,难度不是特别大。首先咱们来看一下我买的这个EC20模块的具体信息:从上面的图可以看出来,EC20系列模块是基于高通平台的一个通信模组,该有的外围接口都有了,如果有需要的话,完全可以基于这个模块做主控平台,做类...原创 2019-01-31 13:40:13 · 7077 阅读 · 0 评论 -
NUC972触摸屏驱动移植过程分析(三)
今天继续分析NUC972触摸屏驱动,今天咱们详细说一下具体的TSC2007这个芯片的驱动代码。其实这段代码并不十分复杂,主要先搞清楚以下几点:第一:触摸屏是注册到I2C总线上的input设备,所以驱动里面既包含I2C相关配置,也包含input设备相关配置;第二:触摸屏驱动中具体的位置采样和各种滤波算法是触摸屏供应商提供的,作为触摸屏使用者一般不需要关注;第三:触摸屏的中断配置和处理,主...原创 2019-01-24 22:43:12 · 1459 阅读 · 0 评论 -
TMS320VC5509A通过MCBSP接口与NUC972的IIS接口进行音频传输(三)
TMS320VC5509A通过MCBSP接口与NUC972的IIS接口进行音频传输(三) 今天咱们继续了解DSP5509A的MCBSP接口与NUC972的IIS接口的音频传输的第三部分,就是DSP5509A在linux上的驱动部分。 首先咱们了解一下linux系统上的音频系统。目前linux上主流的音频框架是ALSA(Advanced Linux Sound Architectu...原创 2018-12-18 14:44:34 · 838 阅读 · 0 评论 -
TMS320VC5509A通过MCBSP接口与NUC972的IIS接口进行音频传输(二)
TMS320VC5509A通过MCBSP接口与NUC972的IIS接口进行音频传输(二)今天继续学习DSP5509A与NUC972通过IIS进行音频数据传输,主要分析DSP5509A这一端的MCBSP接口的配置。首先先介绍一下DSP5509A的MCBSP接口。TI的官方文档是这样描述的:The TMS320C55x DSPs provide multiple high-speed,multic...原创 2018-12-12 11:04:48 · 1110 阅读 · 0 评论 -
TMS320VC5509A通过MCBSP接口与NUC972的IIS接口进行音频传输(一)
最近一段时间研究了一下DSP5509A的MCBSP(多缓冲串口)接口和Nuc972的IIS接口进行音频数据传输的问题,今天终于有了点儿心得,和大家分享一下。 总体思路是基于嵌入式linux音频框架ASOC,将DSP5509A模拟成一个codec挂在linux上,通过DSP5509A上的MCBSP与Nuc972上的IIS接口进行音频数据交互,DSP5509A作为从设备,...原创 2018-12-11 20:47:37 · 743 阅读 · 0 评论 -
ubuntu 执行apt-get install报错Failed to fetch的解决方法
最近在调试mcuzone的nuc972开发板,用了他们给的虚拟机,在apt-get install vim 时出现Failed to fetch的问题,在网上找了找,有人说是DNS服务器没有设置对,有人说需要使用阿里云的服务器,国外的服务器被和谐了,根据这两种方式修改后还是不行,最后无意间输入了sudo apt-get update再sudo apt-get install vim ...原创 2018-03-13 22:15:13 · 9341 阅读 · 5 评论 -
Nu-Writer加密模式MTP在Nuc972上面的使用
最近突然对新唐的Nuc972的加密功能有了浓厚的兴趣,询问过好多同仁,也没有得到满意的答案,经过几天的摸索,终于搞明白是怎么回事儿,废话不多说了,直接说使用方法:首先是向nuc972内部的MTP存储区烧写秘钥文件: 第一:将Nu-Writer通过USB连接到板卡上的972,打开MTP模式,如下图所示 软件默认有一个秘钥文件,在使用之前,最好修改一下,第一行...原创 2018-05-30 15:59:32 · 2443 阅读 · 0 评论