cpu-arm9-mini2440
文章平均质量分 76
google_lover
这个作者很懒,什么都没留下…
展开
-
asm文件
mini2440附带的内核源码里的asm[root@localhost linux-2.6.32.2]# pwd/opt/FriendlyARM/mini2440/linux-2.6.32.2[root@localhost linux-2.6.32.2]# find -原创 2011-09-23 18:59:58 · 1352 阅读 · 0 评论 -
mini2440编译2.6.39.4内核
[root@localhost linux-2.6.39.4]# cat /proc/version Linux version 2.6.40.3-0.fc15.i686.PAE (mockbuild@x86-16.phx2.fedoraproject.org) (gcc ve原创 2011-09-03 20:33:10 · 1095 阅读 · 0 评论 -
mini2440之ads下dma测试
在网上找到一个dma的ads工程,将其dma功能整到了原来的ads工程TQ2440_Test里面用下面的main.c换下原来TQ2440_Test的main.chttp://download.csdn.net/detail/songqqnew/3636198之所以要介绍DMA,因为它对性能太重要了!只有活用了DMA,CPU的性能才能上去!S3c2410有四个DMA,每个DMA支持工原创 2011-09-25 18:49:21 · 1577 阅读 · 0 评论 -
getopt(),getopt_long(),getopt_long_only()
man 3 getoptNAME getopt, getopt_long, getopt_long_only - Parse command-line options #include int getopt(int argc, char * const argv[], const char *optstri原创 2011-11-24 09:05:38 · 2316 阅读 · 1 评论 -
mini2440的时钟
mini2440上为了降低电磁干扰配备了12MHz的晶振,如果直接给当做cpu的时钟,那这个s3c2440a就屈才了。幸好cpu内部自带了MPLL将晶振时钟倍频使得cpu工作在FCLk及AHB总线上的外设工作在HCLK和APB总线上的外设工作在PCLK。当然还配有一个UPLL来产生恒定的48MHZ以支持usb2.0.①.时钟源选择在系统复位时检测引脚OM3:OM2,若是0:0,则主时钟源选原创 2011-10-21 16:38:31 · 1311 阅读 · 0 评论 -
lcd flash sdram
lcdmake menuconfig:Device Drivers ---> Graphics support ---> Support for frame buffer devices ---> S3C2410 LCD framebuffer supportdevice node: /dev/fb0file: drivers/video/s3c2410fb.cA原创 2011-12-18 17:08:27 · 926 阅读 · 0 评论 -
ads+jlink和keil+jlink调试环境配置
/***********************************************************************************************************************************************************************/ads1.2 and jlinkv81.安装ads1.原创 2011-09-25 17:07:42 · 5057 阅读 · 2 评论 -
换底板2-之核心板
核心板已经是最小系统板了,只要从外部把5v的电源供上,核心板就可以正常进入nor或nand的bootloader。J1短接进入nand的bootloader,J1断开Nor。(我的板子nand里是uboot,nor里是supervivi)继续进入linux会卡在dm9000处。就在内核中把dm9000设备移除,如下,重新编译烧写即可。/opt/FriendlyArm/mini244原创 2011-12-01 09:22:22 · 1281 阅读 · 0 评论 -
换底板1
之前用过altium划过几张电路图,一段时间没用都生疏了。为了给micro2440换个底板来作为一个pid控制器的外围电路,温习了一下软件。记录一下流程。使用ad10。这里也有封装 http://www.arm9home.net/read.php?tid-1714.html①.打开micro2440的底板工作区文件(altium版)②生成micro2440的集成库③创建pidpcb原创 2011-10-10 10:32:44 · 2928 阅读 · 1 评论 -
serial driver 2
2440的串口结构和51的对比一下会更清楚一点512440image from http://blog.csdn.net/mr_raptor/article/details/655613351的发送器:单缓冲--或叫没缓冲---SBUF,接收器:双缓冲---SBUF+shiftreg。2440的发送接收都是双缓冲---fifo+shiftreg。micro2原创 2011-12-17 15:54:38 · 1059 阅读 · 0 评论 -
rfid2-micro2440,keil4裸机
将rfid小板移到arm裸机下比较简单,就把arm当单片机来操作就好了。软硬两方面考虑:硬件上,由于rfid的spi在stc11f32x上本来是模拟出来的,所以在micro2440上也先用模拟的吧(s3c2440a有spi接口先不用了)在micro2440原理图上引出如下接口现在定义EINT0 MF_SDA(NSS片选)------(GPF0 OUT)EINT1 MF_原创 2011-10-23 18:48:30 · 3529 阅读 · 5 评论 -
usb2-相关的input子系统及 写成input子系统
//设置支持的事件类型,如input_dev->evbit[0] = BIT_MASK(EV_KEY) | BIT_MASK(EV_REL);//声明支持按键事件EV_KEY和相对坐标事件EV_REL//也可用下面的形式set_bit(EV_KEY,input_dev->evbit)set_bit(EV_REL,input_dev->evbit)//设置号支持的类型后,再设置支持类型原创 2011-10-15 11:27:10 · 5130 阅读 · 0 评论 -
usb2-键盘里的hid
键盘设备和主机的hid规范 /*键盘发送给PC的数据每次8个字节 data0 data1 data2 data3 data4 data5 data6 data7 定义分别是: data0 -- |--bit0: Left Control是否按下,按下为1 |--bit1: Left Shift 是否按下,按下为1原创 2011-10-15 15:13:45 · 3752 阅读 · 0 评论 -
usb3-some hid tables
3 Usage PagesTable 1: Usage Page SummaryPage ID Page Name Section or Document00 Undefined01 Generic Desktop Controls 402 Simulation Controls 503 VR Controls 004 Sport Co原创 2011-10-27 16:46:46 · 1352 阅读 · 0 评论 -
i2c--insmod
micro2440装备的是at24c08配置内核的i2c主机控制器驱动Device Drivers ---> I2C support ---> I2C Hardware Bus support ---> S3C2410 I2C Driver 。这里把它配置成模块形式,并重新编译烧写内核。查看该项目的help:symbol: I2C_S3C2410 [=m],然后再根据Kcon原创 2011-12-02 15:04:38 · 1781 阅读 · 1 评论 -
网络摄像头3 cmos ov9650,plugins/input_s3c2410/
先贴出plugins/input_s3c2410/s3c2410.h里的几个重要的macro和struct/* in case default setting */#define WIDTH 1280#define HEIGHT 1024#define BPPIN 8#define OUTFRMNUMB 1#define NB_BUFFER 4struct frame_t{原创 2011-11-25 17:48:13 · 3509 阅读 · 1 评论 -
网络摄像头4 cmos 0v9650,driver
将ov9650的驱动编译进内核 Device Drivers ---> Multimedia support ---> OV9650 on the S3C2440 driver查看这项的help,可知符号Symbol: S3C2440_CAMERA [=y] 在目录/opt/FriendlyArm/mini2440/linux-2.6.32.2/driver原创 2011-11-25 18:44:52 · 2747 阅读 · 2 评论 -
---WebCam网络摄像头10 socket
如果使用如下指令启动的mjpg_streamer./mjpg_streamer -o "output_http.so -w ./www" -i "input_s3c2410.so -d /dev/camera" 则在mjpg_streamer.c中的两条指令 for (i=0; i<global.outcnt; i++) {//只指定了一个-o,global.outcnt = 1原创 2011-11-27 16:18:02 · 4343 阅读 · 0 评论 -
rfid3-micro2440,linux2.6.32.2,写成misc驱动
接上文的进度,将keil下已经成功的读卡程序写成linux驱动的形式采用misc来写比较方便简单,仅是为了方便测试,好多都在驱动中实现。主文件是rfid.c#include "rc522.h"#define DEVICE_NAME "rfid"unsigned char LastKeyA[6]={0xFF,0xFF,0xFF,0xFF,0xFF,0xFF};//NO.2卡un原创 2011-10-23 19:06:53 · 2093 阅读 · 21 评论 -
rfid4-写成platform驱动
适应时代发展,将misc驱动封装到platfrom总线里面去,platform平台总线模型,把设备和驱动分开,即一个东东要分成两个部分去写和去insmod,是不是有点麻烦。--对于固定于一个cpu平台的用户确实感觉比较麻烦,但是linux的目标是兼容所有的cpu平台,在换cpu平台时就会发现这种设计的优点。先看一个platform的简单例子先把Makefile列出ifneq ($(原创 2011-10-25 09:50:56 · 1017 阅读 · 1 评论 -
rfid5-写成platform驱动
上文platform驱动虽然可用,但内层要要写misc驱动,所以不使用设备提供的资源会更加简便。可以如下改一下Makefile,同上文ifneq ($(KERNELRELEASE),) obj-m := platform_dev.o platform_drv.o else KDIR := /opt/FriendlyARM/mini2440/linux-2.6.32.2 #原创 2011-10-25 10:55:02 · 1063 阅读 · 0 评论 -
rfid6-写成platform驱动
将前面rfid的misc挂到platform平台上,因为misc驱动都有了,所以很简单,代码复制过来就好了设备侧就用上文的那个就好/******************platfrom_dev.c***************************/ #include #include #include #include #include #includ原创 2011-10-25 11:54:42 · 1402 阅读 · 8 评论 -
usb2-鼠标里的hid
hid spec 下载:http://www.usb.org/developers/hidpage#Class_Definitionshid usage table 下载http://www.usb.org/developers/hidpage#HID_Usagemouse设备和主机的hid规范,每次中断传输,mouse发给pc 4个字节的数据data,含义如下原创 2011-10-15 11:40:52 · 2018 阅读 · 0 评论 -
usb5-写成usb驱动
usb总线驱动模型里也有struct usb_driver和struct usb_device,这点与platform虚拟总线里的struct platform_device和struct platform_driver相似。不同之处是platform模型中,需要写两个驱动文件,分别是driver.ko和device.ko,然后分别insmod。usb驱动只需要写一个驱动文件driver原创 2011-10-31 17:26:32 · 1405 阅读 · 0 评论 -
usb6-usb数据采集仪,sic8051f320下位机,micro2440 linux2.6.32.2上位机
此单片机最多可配置17个ad采集通道,本例用到8个。usb1.1,full speed使用两个端点,数据流从sic8051f320的中断输入端点1流向micro2440,输出端点2也配置成中断端点,暂时没用预留着吧先说一下流程,--有的是事实,有的是猜测,路过的同学请用批判的精神去读,仅是我目前的理解。①usb设备插入micro2440某个usb口时,此口的D+脚的电平变为3v左右原创 2011-11-01 17:55:17 · 2502 阅读 · 7 评论 -
modbus4-232 485 单机 多机
http://www.mcuol.com/download/upfile/20090504091459_PL-2303HX.pdfhttp://datasheets.maxim-ic.com/en/ds/MAX220-MAX249.pdfhttp://datasheets.maxim-ic.com/en/ds/MAX1487-MAX491.pdf①max232:占用mcu的2个引脚原创 2011-11-05 17:16:17 · 2879 阅读 · 0 评论 -
modbus-rtu qt4-serialport1------ xp as host
sourceforge有一个qt下的modbus开源项目http://sourceforge.net/projects/qmodbus/http://sourceforge.net/search/?q=qmodbusqt4串口编程基本见http://www.yafeilinux.com/?p=820使用第3方的类,windows添加以下4个文件qexts原创 2011-11-27 16:21:02 · 2260 阅读 · 0 评论 -
modbus-rtu qt4-serialport2------micro2440 as host
和上文差不多,类换了一下。添加如下4个文件。qextserialbase.cppqextserialbase.hposix_qextserialport.cppposix_qextserialport.hlinux下使用poll方式操作串口。即定义一个定时器去轮询串口,看看里面有没有数据。(如果有,看有多少,字节数达到要求后,读取)。micro2440有3个现成的串原创 2011-11-27 16:21:38 · 1877 阅读 · 3 评论 -
modbus-rtu qt4-serialport3--------micro2440 as device
有了前两文的基础,当然还要加上更前面的一些知识。1.设备源码不贴了。几点说明。由于上文的串口类在linux下只能使用poll方式查询串口。所以需要准备一个定时器去polling,4ms(并且串口类的采集串口时间也设为4ms)但又由于需要识别modbus的帧结束,所以又准备一个定时器,10ms(这样就设定modbus的帧间距时间10ms。而第一个定时器的超时时间定的比第二个定时器的超时时原创 2011-11-27 16:22:56 · 2423 阅读 · 1 评论 -
modbus-tcp qt4-socket ---------micro2440 as device
private: Ui::Widget *ui; QTcpServer *tcpServer; QTcpSocket *clientConnection ; QByteArray sendBuf; QByteArray receBuf; qint64 bytesRead ;//接收到的字节数public: /*****for modbus原创 2011-11-27 16:31:11 · 3755 阅读 · 9 评论 -
spi 主机控制器驱动(spi_master)
spi_master/* linux/drivers/spi/spi_s3c24xx.c * * Copyright (c) 2006 Ben Dooks * Copyright (c) 2006 Simtec Electronics * Ben Dooks * * This program is free software; you can redistribute it an原创 2011-12-03 16:37:17 · 2660 阅读 · 2 评论 -
网络摄像头1 mjpg-streamer使用方法
在start_uvc.sh或start_s3c24c0.sh里面,//cmos摄像头./mjpg_streamer -o "output_http.so -w ./www" -i "input_s3c2410.so"//usb摄像头./mjpg_streamer -o "output_http.so -w ./www" -i "input_uvc.so"还可以是## this is原创 2011-11-23 20:49:27 · 6543 阅读 · 0 评论 -
---WebCam网络摄像头6 编译WebCam
直接使用天嵌提供的交叉编译器编译WebCam而生成的input_uvc.so output_http.souvc_stream放在micro2440下面可以直接使用--两个开发板几乎没什么不同。。。而如果要用友善提供的交叉编译器,去编译天嵌的WebCam会发生错误。。。因为编译的时候需要SDL库,而友善的4.3.2没有加入此库。下面是源码树。http://download.csdn.net原创 2011-11-27 16:16:31 · 2911 阅读 · 0 评论 -
---WebCam网络摄像头7 cmos--yuv rgb , Format............:V4L2_PIX_FMT_YUYV
颜色系统基本 refer to http://bbs.chinavideo.org/viewthread.php?tid=4143常见的RGB格式有RGB1、RGB4、RGB8、RGB565、RGB555、RGB24、RGB32、ARGB32常见的YUV格式有YUY2、YUYV、YVYU、UYVY、AYUV、Y41P、Y411、Y211、IF09、IYUV、YV12、YVU9、YUV411原创 2011-11-27 16:16:47 · 6520 阅读 · 0 评论 -
uboot移植之uboot和kernel的参数传递
从uboot启动内核的形式theKernel (0, machid, bd->bi_boot_params)可以看出uboot给内核传递了3个参数,第1个是0,第2个是机器码,第3个是参数列表在SDRAM的起始位置刚好满足一下调用内核的条件• R0=0。• R1=机器类型ID;• R2=启动参数标记列表在RAM 中起始基地址①在 uboot/board/tekkaman原创 2011-10-06 17:36:36 · 3294 阅读 · 0 评论 -
uboot 移植之gd_t,bd_t
gd_t定义在uboot/include/asm-arm/global_data.h/* * (C) Copyright 2002 * Wolfgang Denk, DENX Software Engineering, wd@denx.de. * * See file CREDITS for list of people who contributed to this * proje原创 2011-10-06 18:39:01 · 2208 阅读 · 0 评论 -
kernel移植
linux2.6.35.14详细步骤见Mini2440 Linux移植开发实战指南.pdf嵌入式Linux应用开发完全手册chapter16①在官方内核中已经添加了对mini2440的支持,已有文件linux/arch/arm/configs/mini2440_defconfiglinux/arch/arm/mach-s3c2440/mach-mini2440.c(友善原创 2011-10-07 15:21:52 · 950 阅读 · 0 评论 -
kernel移植之linux stage1:内核引导
/* * linux/arch/arm/kernel/head.S * * Copyright (C) 1994-2002 Russell King * Copyright (c) 2003 ARM Limited * All Rights Reserved * * This program is free software; you can redistribute it原创 2011-10-07 17:56:49 · 1880 阅读 · 0 评论 -
6410 gpio控制及接口
updating unsigned tmp; //gpe1 pull up,置位3:2=10b,其余不变tmp = readl(S3C64XX_GPEPUD);tmp &= ~(2<<2);tmp |= 2<<2;writel(tmp,S3C64XX_GPEPUD);//gpe1 output mode,置位7:6:5:4=0001b,其余不变tmp原创 2012-06-20 09:44:01 · 1347 阅读 · 0 评论 -
spi 外设驱动(spi_driver)
spi驱动模型和i2c的类似,都按照主机外设分离来设计的。但我觉得比i2c的要简明好多。上文配置的spi驱动最外层是platform总线然后是spi总线然后是字符设备。spi驱动模型分为spi主控制器驱动,对应结构体spi_master-spi_s3c24xx.c。控制怎么发。spi外设驱动,对应结构体spi_driver-----spidev.c。实现与用户的接口。*****原创 2011-12-03 15:58:00 · 6756 阅读 · 2 评论