自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(41)
  • 收藏
  • 关注

原创 ARM40-A5D27应用程序——CAN总线应用程序示例

ARM40-A5D27应用程序——CAN总线应用程序示例 本文为CAN总线应用程序示例,测试板为ARM40-A5D27. 一、在shell中测试 把can0的TX与CAN1的TX连接,CAN0的RX和CAN1的RX连接,然后:# ifconfig can0 down//配置can0的波特率为250Kbps# ip link set can0 type can bitrate 250000# ifconfig can0 up# ifconfig can1 down//配置can1的波特率

2020-07-06 11:38:02 515

原创 ARM40-A5D27应用程序——串口应用程序示例

ARM40-A5D27应用程序——串口应用程序示例 本文为串口应用程序示例,测试板为ARM40-A5D27. 一、在shell中测试 将串口 ttyS5 的TX、RX脚短接,然后:cat /dev/ttyS5 &echo 123abc > /dev/ttyS5 //可以看到ttyS5返回123abc二、 C代码 文件名为 test_uart.c,代码见本文附录(1)。三、交叉编译arm-linux-gnueabihf-gcc -o test_uart test_uart

2020-07-06 10:56:26 330

原创 ARM40-A5D27应用程序——脉冲计数

ARM40-A527应用程序——脉冲计数2020.4.16 在工业控制中,经常需要获取脉冲信号计数值、频率、周期等参数。本文为实现外部输入脉冲信号的计数、频率、周期测量的实例。 主要功能: 读取1s时间内的外部输入脉冲信号计数值,通过/proc/flowmeter可以查看结果。一、脉冲计数 (1)C语言源码  文件包含 flow_meter.c,Makefile,代码见附录(1)。 (2)交叉编译make (3)执行程序与测试  将交叉编译得到的flowmeter.ko文件拷贝到ARM

2020-06-11 09:53:52 685

原创 ARM40-A5D27应用程序——SPI的用户态驱动(3)

ARM40-A527应用程序——SPI的用户态驱动(3)2020.4.16 SPI的用户态驱动有两种方式,read/write 或者 ioctl(). read/write方式在同一时间只能read或write。如果要同时read和write,则需要用ioctl(Input Output Control). 本文是一个ioctl的例子,操作AD7193,仅用于测试AD7193寄存器,不用于功能/性能测试。一、例1 (1)SPI应用程序的C语言源码  文件包含 AD7193.h, AD7193.

2020-06-03 18:32:04 907 1

原创 ARM40-A5D27应用程序——SPI的用户态驱动(2)

ARM40-A527应用程序——SPI的用户态驱动(2)2020.4.16 SPI的用户态驱动有两种方式,read/write 或者 ioctl(). read/write方式在同一时间只能read或write。如果要同时read和write,则需要用ioctl(Input Output Control). 本文是一个ioctl的例子。一、例1 (1)SPI应用程序的C语言源码  文件名为 test_ad7193_mode.c,代码见附录(1)。 (2)交叉编译arm-none-linux

2020-06-01 19:02:50 312

原创 ARM40-A5D27应用程序——SPI的用户态驱动(1)

SPI的用户态驱动(1)2020.4.16 SPI的用户态驱动有两种方式,read/write 或者 ioctl(). read/write方式在同一时间只能read或write。如果要同时read和write,则需要用ioctl(Input Output Control). 本文是一个 read/write的例子。一、例1 (1)SPI应用程序的C语言源码  文件名为 test_s...

2020-04-16 21:56:58 351

原创 ARM40-A5D27应用程序——GPIO输出

ARM40-A527应用程序——GPIO输出 Linux内核4.8版本后,提供了新的GPIO字符驱动接口。本文测试板为ARM40-A5D27. 一. 设置GPIO的值 文件名为 test_gpio_output.c,代码见本文附录(1)。 测试DO1~DI10等10个gpio的状态。二、交叉编译arm-linux-gnueabihf-gcc -o test_gpio_output t...

2020-04-14 00:18:45 613

原创 ARM40-A5D27应用程序——GPIO输入

@[TOC]ARM40-A5应用程序——GPIO输入ARM40-A527应用程序——GPIO输入 Linux内核4.8版本后,提供了新的GPIO字符驱动接口。本文测试板为ARM40-A5D27. 一. 获取GPIO的值 文件名为 test_gpio_input.c,代码见本文附录(1)。 测试DI1~DI12等12个gpio的状态。二、交叉编译arm-linux-gnueabihf...

2020-04-13 23:54:42 416

原创 ARM40-A5应用程序——key

ARM40-A5应用程序——key2019.3.8版权声明:本文为博主原创文章,允许转载。  Linux输入设备总类繁杂,常见的包括有按键、键盘、触摸屏、鼠标、摇杆等等,他们本身就是字符设备,而Linux内核将这些设备的共同性抽象出来,简化驱动开发建立了一个input子系统。  本文结合ARM40-A5介绍其中的gpio key,即GPIO按键。一、gpio key电路  下图是ARM...

2019-03-08 22:56:43 899

原创 ARM40-A5应用——spidev

ARM40-A5应用——spidev2019.3.2版权声明:本文为博主原创文章,允许转载。  SPI是"Serial Peripheral Interface" 的缩写,是一种四线制的同步串行通信接口,用来连接微控制器、传感器、存储设备等。SPI设备分为主设备和从设备两种,在大多数情况下,CPU或SOC一侧通常都是工作在主设备模式,目前的Linux内核版本中,只实现了主模式的驱动框架。 ...

2019-03-02 22:57:10 830

原创 ARM40-A5应用程序——ledlike

ARM40-A5应用程序——ledlike2019.3.2版权声明:本文为博主原创文章,允许转载。  Linux系统将控制LED灯的这部分功能整合起来,设计成了一个标准的LED子系统,对LED子系统的操作在shell环境中就能完成。  由于蜂鸣器、继电器、用作输出的gpio、看门狗喂狗信号等都类似于LED,因此我们将此类设备称为ledlike。  我们结合ARM40-A5看一下操作led...

2019-03-02 11:41:52 341

原创 ARM40-A5应用——采用TCP协议的C/S架构示例(2)

采用TCP协议的C/S架构示例(2)2018.12.18  本文是一个TCP通讯的示例,分为服务器和客户端两部分。  服务器端47.98.140.167创建套接字socket,并与端口11014绑定;   然后使套接字处于监听listen状态,调用accept等待来自客户端的连接请求;  收到客户端的连接请求后与客户端建立连接;  最后接收客户端发来的消息并打印出来。  客户端创建套...

2018-12-18 20:43:01 200

原创 ARM40-A5应用——采用TCP协议的C/S架构示例(1)

采用TCP协议的C/S架构示例(1)2018.12.18  本文是一个TCP通讯的示例,分为服务器和客户端两部分。  服务器端47.98.140.167创建套接字socket,并与端口11014绑定;  然后使套接字处于监听listen状态,调用accept等待来自客户端的连接请求;  收到客户端的连接请求后与客户端建立连接;  最后接收客户端发来的消息并打印出来。  客户端创建套接...

2018-12-18 20:31:23 256

原创 ARM40­-A5指南——串口测试

ARM40­A5指南——串口测试2018.12.15版权声明:本文为博主原创文章,允许转载。一、ARM40-A5的串口在ARM40-A5板卡串口使用2mm间距8pin简牛接口,引脚定义,见表1。图1表1二、进入shell调试串行接口进入shell,可调试串行接口。例如:将J65_pin1与J65_pin2连接,在shell中测试/dev/ttyS5的字符自收。cat /dev...

2018-12-15 15:45:45 586

原创 ARM40-A5应用——探测holer服务的状态

ARM40-A5应用——探测holer服务的状态2018.11.24版权声明:本文为博主原创文章,允许转载。  holer 是一个内网穿透工具,基于holer,可以通过ssh,连接处于内网的ARM40设备。  当有大量设备运行时,需要掌握 holer 服务的运行状态。一、探测holer服务状态  共包含3个文件:holer.list holer_online_check.sh s...

2018-11-24 11:30:49 477 1

原创 ARM40-A5应用——ARM40网络应用场景3

ARM40-A5应用——ARM40网络应用场景32018.9.15  本文接《ARM40-A5应用——ARM40网络应用场景2》。八、应用场景5——双有线+无线自动切换  有线eth0、有线eth1、无线ppp0三者之间自动切换,流程详见代码和图示。  建立 /etc/network/if-auto-switch.sh 文件:  touch /etc/network/if-auto-s...

2018-11-22 10:52:08 341 1

原创 ARM40-­A5应用程序——CAN总线的发送和接收

ARM40-­A5应用程序——CAN总线的发送和接收版权声明:本文为博主原创文章,允许转载。    ARM40-A5系列板卡共有2路隔离CAN总线,CAN总线的引脚定义见《ARM40-­A5指南——CAN总线接口与测试》。一、shell中CAN总线的接收与发送1.1、硬件接线与配置  将CAN0的TX与CAN1的TX通过100R电阻连接,CAN0的RX和CAN1的RX通过100R电阻连...

2018-11-13 13:29:23 594

原创 ARM40-A5应用——W1LED的使用说明

ARM40-A5应用——W1LED的使用说明2018.11.7  ARM40的一些产品上需要用到较多的LED指示灯,此时推荐使用W1LED来实现。  ARM40主机监测GPIO、串口(RS232和RS485)、CAN等外设的输入/输出状态,定期(例如每100ms)给W1LED指示灯板发送数据,控制LED指示灯的亮/灭。  W1LED指示灯板上有一颗MCU,接收ARM40主机发来的数据,根据...

2018-11-08 11:53:33 504

原创 ARM40-­A5应用程序——温度传感器DS18B20的驱动与应用

ARM40-­A5应用程序——温度传感器DS18B20的驱动与应用2018.10.31  DS18B20是常用的温度传感器,具有体积小,GPIO占用少,抗干扰能力强,精度高的特点。工作电压3.0~5.5VDC,静态功耗<3uA,测温范围 -55℃~+125℃。  DS18B20的驱动是GPIO驱动的一个很好的示例。一、DS18B20驱动1.1、驱动源码  见附(1)。主要封装了如...

2018-10-31 16:53:41 415

原创 ARM40-­A5指南——CAN总线接口与测试

ARM40-­A5指南——CAN总线接口与测试2018.10.20  版权声明:本文为博主原创文章,允许转载。    ARM40-A5系列板卡共有2路隔离CAN总线,可通过CAN总线转串口(USB串口)模块与PC连接通讯。一、ARM40-A5的CAN总线接口  ARM40-A5板卡隔离CAN总线接口使用2mm间距8pin简牛接口,见图1的J62。引脚定义见表1。        图1...

2018-10-31 10:09:55 1127

原创 ARM40-A5应用——ARM40文件的拓荒部署示例(ARM40-reclaim-OTA)

ARM40应用——出厂配置文件的自动化部署2018.9.17  ARM40设备出厂时,需要安装一些出厂文件,本文给出一个出厂文件的自动化部署示例。一、出厂文件自动化部署的步骤1.1、准备服务器端文件  (1)将需要拷贝到ARM40的文件存放服务器上的如下两个目录/home/ritserver/ARM40-A5-projects/noise_rdace/APP_20180917/rdac...

2018-10-11 10:55:02 371

原创 ARM40-A5应用——与网络时间的同步3(发行版方式)

ARM40-A5应用——与网络时间的同步3(发行版方式)2018.10.7版权声明:本文为博主原创文章,允许转载。  本文介绍大部分发行版使用的时间设置方式,即  方式B(发行版方式、Windows方式,大部分发行版使用这种方式):硬件时钟为CST,系统时钟也为CST  开机:    RTC --> CST(将硬件时钟看成是CST时间)  更新时间:  CST --存储到–&

2018-10-08 16:40:03 261

原创 ARM40-A5应用——与网络时间的同步2(内核默认方式)

ARM40-A5应用——与网络时间的同步2(内核默认方式)2018.10.7版权声明:本文为博主原创文章,允许转载。  本文介绍Linux内核默认的时间设置方式,即  方式A(内核方式,Linux内核默认的方式): 硬件时钟为UTC(世界标准时间,协调世界时),系统时钟为CST  开机:    RTC --> UTC(RTC中存放UTC时间)–> 读取时区 --&

2018-10-08 16:26:02 423

原创 ARM40-A5应用——ARM40文件的半自动远程更新示例(ARM40-semiauto-OTA)

ARM40-A5应用——ARM40文件的半自动远程更新(ARM40-SEMIAUTO-OTA)2018.9.21  在应用程序升级以后,希望ARM40能够远程从服务器下载并安装新版本的应用程序。  本文提供一种手动远程更新应用程序的参考方法。一、半自动远程更新的步骤1.1、准备服务器端文件  服务器端涉及到的目录和文件如下:/home/ARM40-A5/ARM40-A5-projec...

2018-09-22 10:06:38 574

原创 ARM40-­A5指南——液晶屏触摸屏接口与测试

ARM40­-A5指南——液晶屏触摸屏接口与测试2018.9.14 版权声明:本文为博主原创文章,允许转载。  ARM40系列板卡液晶屏接口使用2mm间距20pin简牛接口,通过连接不同型号TCON板,能适配市面上大部分主流液晶屏。ARM40-A5板卡采用单独背光方案,将LVDS信号与背光信号分开接线,大大减弱了信号间的干扰。触摸屏使用四线制电阻屏,价格较低,使用方便,适合用于工业领域。...

2018-09-17 14:21:01 1664

原创 ARM40-A5应用——ARM40网络应用场景1

ARM40应用——ARM40联网的几种应用场景配置示例2018.9.15  ARM40主机可以使用eth0、eth1、4G/3G、GPRS、wifi等多种形式上网,本文介绍了三种场景下的配置示例,分别是:   2.1、应用场景一:使用ppp0连接公网,eth1用于调试,不使用eth0   2.2、应用场景二:使用eth0连接公网,eth1用于调试,不使用ppp0   2.3、应用场景...

2018-09-17 12:59:21 502 1

原创 ARM40-A5应用——ARM40网络应用场景2

ARM40应用——RDACE的一种默认出厂配置2018.9.15一、网络配置  RDACE共使用3个网络:eth0、eth1、ppp0,其默认配置与用途分别为:   eth0  192.168.0.250  业务  将RDACE的数据传送到服务器   eth1  192.168.6.6   调试  使用网络与PC机连接,用 telnet 登陆   ppp0  移动分配IP  ...

2018-09-14 14:32:39 417

原创 ARM40-A5指南——GPRS模块的ppp模式

ARM40-A5应用——GPRS模块的ppp模式2018.8.31 版权声明:本文为博主原创文章,允许转载。  GPRS模块有两种工作模式:ppp模式和串口透传模式,串口透传模式见《ARM40-A5应用——GPRS模块的串口透传模式》。一、GPRS模块简介  RIT­GPRS­22BP型GPRS模块(以下简称GPRS模块),是一款工业级的四频段 GSM/GPRS无线模块。具有2...

2018-08-31 17:18:44 705 2

原创 ARM40-A5应用——ARM40文件的自动远程更新(ARM40-auto-OTA)

ARM40-A5应用——从服务器更新ARM40上的APP应用程序(ARM40-APP-OTA)2018.8.15    ARM40部署提要:     (1)根据第5节建立各个文件;     (2)按3.5节测试;    在应用程序升级以后,希望ARM40能够自动远程从服务器下载并安装新版本的应用程序。     本文提供一种远程更新应用程序的方法,并采用知行合一的方式,边讲解,边实...

2018-08-26 13:07:14 651

原创 ARM40-A5应用——与网络时间的同步1(概述)

ARM40-A5应用——与网络时间的同步2018.6.28 版权声明:本文为博主原创文章,允许转载。  ARM40部署提要:   (1)根据7.1节(1)(2)(3)(4)(5)的步骤建立各个文件;   (2)按7.3节测试;  本文介绍ARM40-A5本地系统时间与网络时间同步的方法,共介绍了三种方式: ntpdate、ntpd、rdate。   内容较多,读者可跳至第七节...

2018-08-22 11:16:25 1188

原创 ARM40-A5应用——使用rsync与Linux服务器的远程数据同步

ARM40-A5应用——使用rsync与Linux服务器的远程数据同步 2018.7.5版权声明:本文为博主原创文章,允许转载。  本文介绍ARM40-A5与阿里云Linux服务器的远程数据同步方法。 在有线网络,4G网络,GPRS(ppp)网络的情况下都可使用。一、rsync 简介   与复制命令 cp 一样,rsync 也把文件从源复制到目标。但是,与 cp 不同,rsync ...

2018-08-21 11:28:11 941

原创 ARM40-A5应用——使用holer访问内网的ARM40

ARM40-A5应用——使用holer访问内网的ARM40 2018.8.13  对于使用4G、3G、GPRS连接互联网的ARM40设备来说,移动运营商(例如中国移动公司)分配的IP地址为内网IP,访问公网IP时,先是要通过NAT,经过这一层的转换后,内网IP会被换成NAT的公网IP,并分配一个临时的端口。这能解决IP地址日益匮乏的问题,因为NAT的存在,可以使多台设备共用一个公网IP地址。...

2018-08-21 11:00:41 1030

原创 ARM40-A5应用——GPRS模块ppp拨号上网

ARM40-A5应用——GPRS模块ppp拨号上网 2018.6.17版权声明:本文为博主原创文章,允许转载。一、GPRS模块简介   RIT-GPRS-22BP型GPRS模块(以下简称GPRS模块),是一款工业级的四频段GSM/GPRS无线模块。具有2路RS232串口,实现串口数据与GPRS网络双向透明传输,设置简单,传输稳定。 也可工作于ppp模式,实现ARM40-A5的拨号上网。...

2018-08-21 10:24:28 1639

原创 ARM40-A5应用——Shell脚本实现进程自动拉起

ARM40-A5应用——Shell脚本实现进程自动拉起2018.6.11 版权声明:本文为博主原创文章,允许转载。      在Linux上许多程序是无法保证绝对稳定的,但必须要确保程序在出现小概率错误或者未知崩溃退出后,可以重新运行起来。本文介绍一种基于shell脚本的后台进程来解决这种问题。 一、普通程序自动拉起      后台进程脚本process-watch...

2018-07-06 13:09:41 1132

原创 ARM40-A5应用——fbset与液晶屏参数的适配

ARM40-A5应用——fbset与液晶屏参数的适配2018.6.18版权声明:本文为博主原创文章,允许转载。在ARM板卡上使用某个型号的LCD,往往要修改LCD驱动程序或者设备树,很不方便。在ARM40-A5中,我们把常用的LCD型号的配置指令存放在 /etc/init.d/S01user1lcd 文件中,通过修改该文件,即可非常方便的适配不...

2018-07-03 14:32:31 2796

原创 ARM40-­A5指南——上电进shell与debug串口调试

ARM40-­A5指南——上电进shell与debug串口调试2018.6.22版权声明:本文为博主原创文章,允许转载。     ARM40系列板卡致力于降低嵌入式产品的研发难度、研发风险、研发费用、人力投入和研发周期,并着力提高产品的稳定性、易用性,大大降低用户的设计门槛;为各行各业提供专业化、标准化的软硬件开发平台,从而使产品能够“快速研发,快速上市”    ARM40系列...

2018-07-03 14:25:12 498

原创 ARM40-A5应用程序——液晶屏触摸屏测试程序

ARM40-A5应用程序——液晶屏触摸屏测试程序2018.02.03版权声明:本文为博主原创文章,允许转载。 一、在 shell 中的简单测试        (1) cat /dev/urandom  >  /dev/fb0                      // 显示雪花屏        (2) cat /dev/zero  > /dev/fb0   ...

2018-02-03 11:16:58 1195 1

原创 ARM40-A5应用程序——SPI应用程序(AD7689)

ARM40-A5应用程序——SPI应用程序(AD7689)2017.9.15版权声明:本文为博主原创文章,允许转载。一、SPI应用程序的C语言源码 文件名为 test_ad7689.c,代码见本文的最后。二、交叉编译 arm-none-linux-gnueabi-gcc -o test_ad7689 test_ad7689.c -stat...

2017-09-15 10:53:36 4203 1

原创 ARM40-A5应用程序——ARM40上使用sqlite3的demo

ARM40-A5应用程序——ARM40上使用sqlite3的demo2017.4.11目录1、下载 SQLite3源码2、复制并解压源码包3、配置编译选项4、编译5、去除调试信息6、复制文件到ARM407、在ARM40上运行测试sqlite38、在ubuntu上编译demo9、在ARM40上运行demoSQLite 是一款轻型的数据库,是遵守ACID的关联式数据库管理系统...

2017-04-12 08:49:32 719

原创 ARM40-A5应用程序——GPIO输出高低电平

ARM40-A5应用程序——GPIO输出高低电平2017.03.19 一、在 shell 中控制一个IO的高低电平        (1) echo 138 > /sys/class/gpio/export                      // 138对应的是E10,输入这个命令后,即出现/sys/class/gpio/pioE10        (2) echo...

2017-03-19 14:26:10 1994

空空如也

空空如也

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

TA关注的人

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