ARM
文章平均质量分 57
Jason.leo
系统平台:Linux RT-Thread seL4 Nuttx VxWorks freeRTOS μCOS Wince
硬件平台:ARM STM32 51
语言平台:C C++ Python shell
展开
-
adb socket通讯
android - How to use adb socket to get the result from the phone? - Stack Overflow今天无意中在stack overflow上看到一个之前解决过的问题,想想还是总结一下,帮助遇到跟我同样问题的人。之前在做机器人开发的时候,有一个测试环节,需要测试机器人的底盘、大脑,其中包括硬件和软件,机器人跟外界的连接有两个,一个是WiFi,一个是USB device口,WiFi在生产环节并不是很实用,在产线上的配网是通过摄像头扫码自动原创 2021-11-05 09:13:34 · 3091 阅读 · 1 评论 -
arm linux驱动笔记
编译好的驱动后缀名为KO,拷贝至/lib/modules/2.6.32.2/路径下。加载驱动使用:modprobe mini2440_hello_module (后缀名不用带)卸载驱动使用:rmmod mini2440_hello_modulemakefile 文件可以复制例程mini2440_hello_module 的。一样。执行make指令就可编译。下一原创 2013-02-21 15:06:54 · 387 阅读 · 0 评论 -
implicit declaration of function 'class_device_create'
implicit declaration of function 'class_device_create' 编译内核驱动时经常会出现这样的错误:implicit declaration of function 'class_device_create'或者是implicit declaration of function 'class_device_destroy'dec转载 2012-12-24 14:54:37 · 3455 阅读 · 2 评论 -
modprobe和insmod的区别
在Linux中,modprobe和insmod都可以用来加载module,不过现在一般都推荐使用modprobe而不是insmod了。modprobe和insmod的区别是什么呢?1.modprobe可以解决load module时的依赖关系,比如load moudleA就必须先load mouduleB之类的,它是通过/lib/modules//modules.dep文件来查找依赖关系的转载 2012-11-30 14:19:43 · 1703 阅读 · 0 评论 -
arm developer suite cannot obtain license for --ERROR
今天打开ADS写程序,竟然报错,然后编译器关闭退出,试了好几次都不行,正准备重装呢,但是想想重装费事,看网上有没有解决办法,搜了一下,发现有人说是因为电脑时间改了的问题,我一看自己的电脑时间,竟然成了2002年1月1日,估计是我早晨倒腾机器把MOS电池取下来的缘故,于是按帖子上的提示恢复了时间,问题果然解决了。报错信息如下:Serious error: C3397E: Cannot obt原创 2012-10-26 12:28:23 · 2994 阅读 · 0 评论 -
ADS编译错误:Could not open file 转载
ADS编译错误:Could not open file 转载标签: 杂谈 分类: ARM裸跑问题总结解决方法:首先:工程名、文件名中不能有汉语,不能有括号。其次:在ADS 1.2中,Project——>Remove Object Code——>All targets(Compact target)。分析原因:以前在其他计算机上编译时造成的。转载 2012-10-23 15:16:50 · 1686 阅读 · 0 评论 -
mini2440 usb 扩展的问题
问题我在mini2440外面扩展一个usb hub,我目前有三种usb设备,鼠标、U盘、自己用ch375开发的一个usb板子,这三种设备任意两种组合,wince都可以认出,工作正常,再插入第三种设备,提示我加驱动程序,我的都是标准接口,驱动程序早已经加进去。因为单独一个设备或者两个设备,wince都不会提示加入驱动程序。 另外加上第三个设备时,前面的两个设备也被冲掉了,这时即使原创 2012-08-21 17:28:41 · 1484 阅读 · 1 评论 -
WinCE USB驱动开发 错走冤枉路
WinCE USB驱动开发 错走冤枉路http://www.sina.com.cn 2008年10月15日 10:03 IT168.com 【IT168 专稿】随着USB2.0设备的不断增加,USB设备驱动开发在嵌入式开发中变的越来越重要。Windows CE支持USB 2.0更是对这一波新技术浪潮产生巨大的推动。近期我负责一个这样的项目,在WinCE下开发USB接口的外围设备驱动。转载 2012-08-14 14:43:51 · 656 阅读 · 0 评论 -
evc标签中文乱码解决方法
evc标签中文乱码解决方法在eVC创建工程的时候,向导的语言选择里没有中文选项,默认为英文选项,这个时候的工程里如果有中文出现,在目标设备中可能就会出现乱码,这个时候将Project/Setting/Resources中的语言改成中国中文,并将相应的Dialog的Propretise中语言改成"Chinese P.R.C"即可。转载 2012-08-12 10:32:59 · 675 阅读 · 0 评论 -
wince 工程下的bib reg等文件的区别。
我们在BSP的开发中最常见的主要就是eboot.bib,config.bib,platform.bib和project.bib。下面简单介绍一下:project.bib:该文件主要自创建的WinCE工程中所需的一些文件。platform.bib:该文件包含了和硬件平台相关的文件,主要以驱动程序为主。config.bib:该文件描述了WinCE系统的内存的配置。eboot.bib:该转载 2012-08-05 16:58:54 · 544 阅读 · 0 评论 -
mini2440引脚中断输入配置
今天做一个测试软件,需要修改驱动。即把mini2440的GPIO口之GPG1(EINT9)、GPG9(EINT17)、GPG10(EINT18)设置为中断输入,Both edge triggered,参照wince5.0 BSP驱动userkey进行设置。对IRQ = 36; //IRQ_EINT8; GPG0 if (!KernelIoControl(IOCTL_HAL_REQU原创 2012-07-16 19:13:44 · 1314 阅读 · 0 评论 -
wince mini2440 旋转屏幕
一、下面是一段屏幕旋转结果的注册表保存代码,保存成功了,但是下次开机屏幕还是默认不旋转的,怎样才能使下次开机能保存关机前设置的结果啊?请高手指点!//注册表保存:未成功!void RegSaveRotate(DWORD value){ DWORD rvalue=0; // set tmp value switch(value) {转载 2012-07-12 13:01:26 · 1038 阅读 · 0 评论 -
mini2440 3.7v供电
为了把便携式进行到底,将自己的mini244改造成锂电池供电。改造前,mini2440的最小输入电压是4.5V,输入电流是500MA(实测数据),我买的锂电池的额定电压是3.7V3700mah,刚开始,想到用升压,但经过仔细看mini2440的电路图,发现它最终是要把电压稳定在3.3V,先升后降,效率低,价钱不合算,经过仔细思考,问题就出现在ldo上,mini2440的其中一个ldo是U4:ams转载 2012-12-12 13:36:59 · 1909 阅读 · 0 评论 -
qtopia
http://www.arm9home.net/read.php?tid-4399.html1. 在开始编译小弟的hello程序前,请先按照mini2440手册上第五章及附录1的步骤,建立 好适当的交叉编译还境,并且把x86及arm版的Qtopia编译好.这些事情只需细心地按照 手册上的步骤进行便可,无须小弟多谈. 2. 另外,由于在Linux下,所有档案都转载 2012-12-28 11:38:54 · 513 阅读 · 0 评论 -
GPS数据包解析
GPS数据包解析GPS 上电后,每隔一定的时间就会返回一定格式的数据,数据格式为:$信息类型,x,x,x,x,x,x,x,x,x,x,x,x,x每行开头的字符都是‘$’,接着是信息类型,后面是数据,以逗号分隔开。一行完整的数据如下:$GPRMC,080655.00,A,4546.40891,N,12639.65641,E,1.045,328.42,170809,,,A*60转载 2017-02-26 08:26:52 · 1191 阅读 · 0 评论 -
Nothing to be done for `_depend'.
编译U-boot就出现了Nothing to be done for `_depend'.make: *** [depend] Error 2通过 make clean 没有效果百度后,make clean仅仅是清除之前编译的可执行文件及配置文件 make distclean清除所有生成的文件转载 2015-05-27 07:10:25 · 2446 阅读 · 0 评论 -
Linux移植_make menuconfig提示ncurses未安装
在make menuconfig时,提示:*** Unable to find the ncurses libraries or the *** required header files. *** 'make menuconfig' requires the ncurses libraries. *** *** Install ncurses (ncurses-deve转载 2012-12-21 12:28:39 · 528 阅读 · 0 评论 -
格式化原理
有高级和低级格式化之分:低级格式化:低级格式化就是将空白的磁盘划分出柱面和磁道,再将磁道划分为若干个扇区,每个扇区又划分出标识部分ID、间隔区GAP和数据区DATA等。可见,低级格式化是高级格式化之前的一件工作,它只能够在DOS环境来完成。而且低级格式化只能针对一块硬盘而不能支持单独的某一个分区。每块硬盘在出厂时,已由硬盘生产商进行低级格式化,因此通常使用者无需再进行低级格式化操作.高级格转载 2013-12-15 09:21:57 · 6539 阅读 · 0 评论 -
串口发送接收+mini2440 linux
zigbee模块(顺舟)+串口发送接收+mini2440 分类: LINUX下面是mini2440的发送程序,arm-linux-gcc -o send send.c起初用串口线跟mini2440的232接口想连接,但是不理想,可能是mini2440的232转换芯片不好使,反正怎么都调试不通过。看看原理图,发现有个con1,就是对应着串口1的cp转载 2013-07-01 20:33:26 · 837 阅读 · 0 评论 -
LED字符设备驱动调试笔记
今天写了个led的字符设备驱动加一个测试程序。驱动加载成功,并且测试程序调用驱动成功,但是发现如下现象:驱动名字是ledlm,驱动文件名字是led_drv.ko。1,加载驱动insmod led_drv.ko ,显示ledlm initialized。卸载驱动使用rmmod led_drv.ko没有任何报错信息,但是使用lsmod查看,驱动依然挂载。使用rmmod led_d原创 2013-06-29 20:09:17 · 760 阅读 · 0 评论 -
超级终端输入数据不显示解决办法
超级终端输入数据不显示解决办法文件->属性->设置->ASCII码设置...->ASCII码发送(本地回显键入的字符)[打勾]->确定->确定->完毕.原创 2013-07-11 22:27:59 · 9568 阅读 · 0 评论 -
关于LINUX某些驱动程序如GPIO编译的时候提示未定义的问题
关于LINUX某些驱动程序如GPIO编译的时候提示未定义的问题 从网上下载了DS18B20的驱动,在编译的时候总是提示 S3C2410_GPF0,S3C2410_GPF0_INP,S3C2410_GPF0_OUTP未定义问题,在网上找了一些,原来是内核版本问题, 在2.6.29和2.6.32中定义不同,如下: 在移植mini2440的驱动到2.6.31的时候,编转载 2013-04-22 17:52:36 · 1531 阅读 · 0 评论 -
arm linux mini2440 makefile
arm linux mini2440 makefilemakefile for qtmakefile for driver:原创 2013-03-16 04:24:55 · 649 阅读 · 0 评论 -
mini2440 网络视频传输试验
Mjpeg‐stream 是一个开源软件,用于把mjpeg格式的文件变成流媒体输出。1. 环境平台 目标板:mini2440开发板上运行的系统: 内核 Linux‐2.6.32.2, 默认文件系统 root_qtopia2 在 mini2440 上安装 mjpeg‐stream Step1: 获取要安装的文件 mjpeg‐stream 文件名:mjpg‐streame原创 2012-05-24 17:28:31 · 1822 阅读 · 0 评论 -
实战DeviceIoControl 之一:通过API访问设备驱动程序
Q 在NT/2000/XP中,我想用VC编写应用程序访问硬件设备,如获取磁盘参数、读写绝对扇区数据、测试光驱实际速度等,该从哪里入手呢?A 在NT/2000/XP中,应用程序可以通过API函数DeviceIoControl来实现对设备的访问—获取信息,发送命令,交换数据等。利用该接口函数向指定的设备驱动发送正确的控制码及数据,然后分析它的响应,就可以达到我们的目的。DeviceIo转载 2012-07-12 09:19:03 · 540 阅读 · 0 评论 -
wince之驱动操作
在给驱动写测试程序的时候,在驱动中宏定义的项,如led驱动的宏定义,#define IO_CTL_LED_1_ON 0x01#define IO_CTL_LED_1_OFF 0x06在wince下的应用程序宏定义也要根据这个来定义,否则无法操作,这个是根据我的试验验证过的。原创 2012-07-11 16:29:53 · 454 阅读 · 0 评论 -
wince驱动开发
大部分实验板的手册都有详细的HELLO程序过程,但很少有手册详细讲解流驱动的开发过程,下面以我的经历详细的写一写:流驱动的基本介绍可以看看天嵌手册的第五章,脑子里起码要先有个基本概念!1)打开以下目录:E:\WINCE500\PLATFORM\smdk2440\DRIVERS,并在该目录下新建一个文件夹,命名为GPIOdriver,并用记事本打开该目录下的dirs文件,按其格式添加\GPI转载 2012-07-11 16:03:18 · 580 阅读 · 0 评论 -
Mini 2440 LED、按键和蜂鸣器裸机测试程序(C语言)
已有 215 次阅读 2010-07-08 01:10出处:http://student.csdn.net/space.php?uid=4434&do=blog&id=37880 今天这个程序主要实现了通过mini2440上面的六个按键去控制那个4个LED,并且在按键的过程中蜂鸣器还会发出声音。 实现原理:转载 2012-02-19 16:03:43 · 1578 阅读 · 0 评论 -
ADS1.2如何生成bin文件
先Edit -> Debug settings -> Target Settings -> Post-Linker -> ARM fromELF然后ARM FromELF -> Plain binaryDebugRel同样设置目前还不清楚Debug和DebugRel的区别,不过一般都用Debug。好像是编译模式的不同.原创 2012-02-19 16:04:17 · 1952 阅读 · 0 评论 -
在BSP 中修改LCD 类型及串口输出功能
在BSP 中修改LCD 类型及串口输出功能说明:我们提供的BSP 目前支持以下型号的液晶屏:原创 2012-02-17 15:11:35 · 507 阅读 · 0 评论 -
ADS1.2 Error:(Fatal) L6002u:could not open file
ADS1.2 Error:(Fatal) L6002u:could not open file E:\...我今天也遇到了同样的问题,后来解决了,方法如下: 首先:工程名、文件名中不能有汉语,不能有括号。 其次:在ADS 1.2中,Project——>Remove Object Code——>All targets。 搞定!原创 2012-02-22 13:32:05 · 5008 阅读 · 0 评论 -
wince6.0备忘
1:wince6.0不支持EVC4.2,没有EVC4.2可以使用的SDK,EVC只能使用wince5.0导出的SDK。2:wince6.0与wince5.0的区别:6.0驱动有内核态和用户态之分,5.0只有用户态6.0进程虚拟地址空间为4G,5.0只有32Mhttp://www.cnblogs.com/Torres_fans/archive/2009/10/13/1582528.h原创 2012-02-09 17:28:41 · 382 阅读 · 0 评论 -
有关wince - windows ce开机启动指定的程序
若是standard shell,在%_winceroot% public shell oak files shell.reg中若是taskman shell,在%_winceroot% public wceshellfe oak files wceshell.reg中 [HKEY_LOCAL_MACHINE init]下加入: “launch100”=“myapp.ex原创 2012-02-03 10:54:00 · 799 阅读 · 0 评论 -
Format出现FFFFFF解决办法
format出现FFFFFF解决办法(2010-06-17 12:25:03) C89标准规定,short和char会被自动提升为int(整形化,类似地,float也会自动提升为double),这样做是为了便于编译器进行优化,使变量的长度尽可能一样,尽可能提升所产生代码的效率。data[i]的值当它是正数的时候也同样进行了符号扩展的,只不过正数是前面加0,用%02x打印的转载 2012-01-30 12:02:13 · 1614 阅读 · 0 评论 -
WinCE驱动程序的分类
发 布 时 间 : 2009-04-29 来 源 : 来自网络 作 者 : 匿名 浏 览 : 最近有一些同学发邮件问我,驱动调试助手到底能动态加载哪些驱动,为什么在加载USB设备驱动时总是失败。要解释这个问题,首先得弄清楚WinCE中驱动的相关概念。本文将主要介绍WinCE下驱动程序的分类。 驱动程序是介于操作系统和设备之间的一 个代码层,它的主要作用是为操作转载 2012-01-10 19:59:10 · 367 阅读 · 0 评论 -
Windows CE下操作GPIO的方法(以ARM9 S3C2410为例)
GPIO 是ARM芯片最基本的输入输出通道,在ADS下操作就是一个单片机工作,直接读写其寄存器。在ARM9平台上,Windows CE系统将GPIO的实地址(例如2410的GPIO的基地址为0x56000000)映射到虚拟地址空间(GPIO对应为0xB1600000),这 样,通过对这段虚拟地址空间的操作,就能够完成对GPIO或者其他片内资源的控制、输入输出工作。要操作一个平台的GPIO,在其转载 2012-01-10 19:51:48 · 461 阅读 · 0 评论 -
WINCE快捷方式详解
WINCE快捷方式详解 //=====================================================================================================//TITLE:// WINCE快捷方式详解//AUTHOR:// norains//DATE:// Saturday 15-April-转载 2012-01-10 19:44:41 · 302 阅读 · 0 评论 -
通过修改电源管理驱动,实现WinCE5.0关机功能
wince5.0带的电源管理驱动只实现了“休眠(SUSPEND)”功能,未实现“关机(SHUT_DOWN)”功能。调用函数 SetSystemPowerState()时,无论参数是POWRE_STATE_OFF还是POWRE_STATE_SUSPEND,最终均为 SUSPEND。 如果需要关机,还需要其他的办法。我看过有人专门写了一个PowerKey的驱动,用来实现关机。但是这种方法的问转载 2012-01-09 09:14:41 · 484 阅读 · 0 评论 -
RISC与CISC比较
面试的一道题RISC的设计重点在于降低由硬件执行指令的复杂度,因为软件比硬件容易提供更大的灵活性和更高的智能,因此RISC设计对编译器有更高的要求;CISC的设计则更侧重于硬件执行指令的功能,使CISC的指令变得很复杂。总之RISC对编译器的要求高,CISC强调硬件的复杂性,CPU的实现更复杂。RISC设计思想准则:1. 指令集----RISC处理器减少指令转载 2012-04-26 11:08:14 · 967 阅读 · 0 评论 -
Failed initailizing heap region
mini2440----硬件编程//KEY = G0 3 5 6 7 11 //Led = B5 6 7 8#include "2440addr.h"#define KEY1 (1 #define KEY2 (1 #define KEY3 (1 #define KEY4 (1 #define KEY5 (1 #define KEY6 (1 #转载 2012-04-27 11:01:52 · 928 阅读 · 0 评论