我爱下载
获得 12 次赞
帮助过89人
在前面的研究过程中,发现了两种可以加载和引导m4运行的方法。 经过摸索,我已经可以采用两种方法保证编译的代码在m4中正确引导和运行: 1、 将编译好的bin文件更新到/var/opt/m4中,并重新更名为m4last.fw,重新启动系统,代码会自动加载运行; 2、首先删除/var/opt/m4/m4last.fw文件,重新启动系统,通过命令sudo udooneo_uploader -v xxx.bin的方法加载m4的内核文件,同时启动m4的代码运行。 以上两种方法经过测试,都可以使用。 为了兼容系统的m4内核代码载入方式,每次都必须重新启动,否则代码根本无法载入成功,也不会运行。这让我们这种频繁测试运行效果的人如何忍受啊,于是我采用了下面的方法。 根据imx6sx的用户手册介绍,src_scr寄存器中的22位,m4_enable,这个位的使能和禁止可以让m4内核使能和禁用。于是我做了一个程序,专门用来处理这个状态。 使用方法是, 第一步:执行sudo ./resetm4 ,复位m4内核; 第二步:执行 sudo udooneo_m4uploader -v xxx.bin,加载m4的代码 经过测试,基本满足我的使用要求。 如果发现使用过程中不能达到使用目的,请执行 sudo reboot 命令,重新启动系统。
为了展开异构多核间数据交换的研究,我用了一个多星期的时间把imx6sx手册中messaging unit章节翻译了一下,该章节描述了异构a9和cm4之间数据交换的方式,这里重点强调mu单元作为多核数据交换的硬件机制。 由于水平有限,请大家批评指正。 在研究异构多核的过程中可能还会进一步研究其他的部分
本帖最后由 我爱下载 于 2017-6-27 15:17 编辑 学习了基础python的操作后,想要来电稍微复杂点的应用,这次准备使用spi接口驱动液晶显示屏。在网上检索了一下,如果是oled的那个小液晶ssd1306有大神已经提供了python的库那就可以直接使用就行了,不幸的是我这个准备驱动的液晶是当年飞思卡尔(现在叫nxp)的mxdock板上的一个液晶,不知道是什么驱动芯片的,所以决定采用spidev库从底层直接驱动来看看。 先上图看看:
在简单应用中,串口modbus通讯可以说是即标准又简单的一种设备间通讯协议了,对于一些不需要较大数据量通讯的情况非常适合,我这里基于开源软件freemodbus软件协议栈在orangepi zero上面进行了测试。 基本物理接线关系是,在opi zero的26针扩展接口中,使用串口2,也就是6-8-10三个引脚,分别是gnd-txd-rxd。 外面我连接了一个usb-串口ttl的转换器。
本帖最后由 我爱下载 于 2017-1-6 10:12 编辑 移植完成wiringop后,做了一个简单的测试,驱动我手了的一块nxp的mxdock板上的lcd液晶显示器。 先上效果图: 整体效果图
本帖最后由 我爱下载 于 2017-1-6 09:48 编辑 看到大神移植了wiringop到orangepi pc上面了,我也想把他一直到opi zero上面来,于是下载了wiringop的代码备用。 献上opi zero的端子定义,本次仅移植了26针端子的驱动。
本帖最后由 我爱下载 于 2016-12-6 20:11 编辑 频率可调方波输出方案,也是我申请这块板子时要完成的目标,作为系统测试的信号源使用。mm32f103的ld2作为信号输出端,接被测设备,被测设备将测量ld2上的pwm频率信号,同时用示波器监视输出.
本帖最后由 我爱下载 于 2016-11-15 14:00 编辑 驱动lcd shield的初衷,mm32系统兼具有auduino 兼容接口,因此想将手头的lcd shield应用到这个系统上 遇到的主要问题,在驱动的数据线上,也就是d7的位置,mm32接k1,严重的是,k1就是系统的复位按键,因此必须将这个引脚躲开。lcd shield采用模拟量来区别按键,巧的是mm32将按键k2接到了a0的位置上,因此挠头的驱动线可想而知。 还有一点需要注意,原理图和pcb的pb6和pb7应该是标反了。 另外mm32提供的排针,我的lcd shield也是排针,固有下图