- 博客(20)
- 资源 (54)
- 收藏
- 关注
转载 Linux内核驱动在Tx2440上的移植详解
<br />Linux内核已经完美的支持 UDA1341 音频芯片的驱动,我们只要在arch/arm/mach-s3c2440/mach-smdk2440.c文件中注册 UDA1341 平台设备的控制端口就可以了。<br />1、修改arch/arm/mach-s3c2440/mach-smdk2440.c,在Platform_device结构体中,加入:<br />#if defined(CONFIG_SND_S3C24XX_SOC)<br /> &s3c24xx_uda134x, <br />#endi
2010-12-18 15:41:00
904
转载 Linux下的OSS音频接口编程
<br />采用OSS进行音频编程时应当遵循的一般性框架:<br />(1)打开音频设备;<br />(2)设置采样格式(即量化位数);<br />(3)设置声道数(单声道或者立体声);<br />(4)设置采样率(即采样速度);<br />(5)从设备读入数据或者向设备写入数据;<br />(6)关闭音频设备;<br />上述过程中,第(6)可选,因为在进程正常或非正常退出时都会关闭它所打开的文件描述字,这样也就把音频设备的资源释放了。但是,除此之外的五个步骤是不能缺少的,并且顺序也不能颠倒(OSS编程指
2010-12-16 14:03:00
873
转载 Linux设备驱动开发学习笔录-(init函数和exit函数的书写)
<br />之前的我还不知道该如何写init函数和exit函数,所以就尝试着,借鉴一些已有的驱动,想归纳一下,有不同的版本所以,后来就我就Google了好几篇文章,现在就借助网上的资料在这里总结一下:在这里因为linux2.4和linux2.6有区别,所以在这里就如下书写:<br />2.4内核注册驱动要用:<br />int register_chrdev (unsigned int major, const char *name, struct file_operations *fops);<br />
2010-12-06 09:36:00
822
转载 由简单的LED驱动分析内核源码包中的s3c2410寄存器宏定
<br />上个月在qq2440的光盘里发现了一段简单的LED驱动程序,大致看了一下明白了大意;但是由于里面的宏定义很是麻烦,看起来绕来绕去,于是我也懒得看明白了,干脆在CU论坛里发了个帖一问了事。<br /> 然而,等了几天后,寥寥几个回复。更不爽的是,唯一那个被加了分的回复一看就感觉不对劲,可我自己也没弄清楚缘由,因此也说不清。<br /> 过完了十一,觉得又该学习了,突然想起来这个事。想想还是完全看懂比较好,毕竟自己对kernel的源码包还不算很熟悉,就当是学习kernel吧。<br />
2010-10-18 14:10:00
640
原创 红外调制与解调
<br />光谱位于红色光之外, 波长为0.76~1.5μm,比红色光的波长还长,这样的光被称为红外线。<br />红外遥控是利用红外线进行传递信息的一种控制系统,红外遥控具有抗干扰,电路简单,编码<br />及解码容易,功耗小,成本低的优点,目前几乎所有的视频和音频设备都支持这种控制方式。 <br /><br />一、红外遥控系统结构<br />红外遥控系统主要分为调制、发射和接收三部分,如图1 所示:<br /><br />图1 红外遥控系统<br /><br />1.调制<br /><br />红外遥
2010-10-12 17:29:00
4855
转载 s3c2440基于linux的gpio led字符设备驱动
<br />#include <linux/config.h>//配置头文件<br />#include <linux/kernel.h>/*内核头文件,作为系统核心的一部分,设备驱动程序在申请和释放内存时,不是调用malloc和free,而是调用kmalloc和kfree*/<br />#include <linux/sched.h>//调度,进程睡眠,唤醒,中断申请,中断释放<br />#include <linux/timer.h>//时钟头文件<br />#include <linux/init.h
2010-09-29 09:48:00
1734
原创 TERMIOS_H 详细注释
#ifndef _TERMIOS_H#define _TERMIOS_H#define TTY_BUF_SIZE 1024 // tty 中的缓冲区长度。/* 0x54 is just a magic number to make these relatively uniqe ('T') *//* 0x54 只是一个魔数,目的是为了使这些常数唯一('T') */// tty 设备的ioctl 调用命令集。ioctl 将命令编码在低位字中。// 下面名称TC[*]的含义是t
2010-09-20 15:44:00
1284
原创 termios结构体说明
termios结构体中,该结构体一般包括如下的成员:tcflag_t c_iflag; tcflag_t c_oflag; tcflag_t c_cflag; tcflag_t c_lflag; cc_t c_cc[NCCS]; 其具体意义如下c_iflag:输入模式标志,控制终端输入方式,具体参数如下所示。c_iflag参数表键值说明IGNBRK 忽略BREAK键输入BRKINT 如果设置了IGNBRK,BREAK键的输入将被忽略,如果设置了BRKINT
2010-09-20 15:43:00
1498
原创 Linux串口—struct termios结构体
<br />一、数据成员termios 函数族提供了一个常规的终端接口,用于控制非同步通信端口。 这个结构包含了至少下列成员: <br />tcflag_t c_iflag; /* 输入模式 */<br />tcflag_t c_oflag; /* 输出模式 */<br />tcflag_t c_cflag; /* 控制模式 */<br />tcflag_t c_lflag; /* 本地模式 */<br />cc_t c_cc[NCCS]; /* 控制字符
2010-09-20 15:34:00
9920
原创 Linux操作系统下串口编程入门教程
<br />简介:<br /> Linux操作系统从一开始就对串行口提供了很好的支持,本文就Linux下的串行口通讯编程进行简单的介绍。<br />串口简介 <br /> 串行口是计算机一种常用的接口,具有连接线少,通讯简单,得到广泛的使用。常用的串口是RS-232-C接口(又称EIA RS-232-C)它是在1970年由美国电子工业协会(EIA)联合贝尔系统、调制解调器厂家及计算机终端生产厂家共同制定的用于串行通讯的标准。它的全名是"数据终端设备(DTE)和数据通讯设备(DCE)之间串行二进制数据交换
2010-09-20 15:06:00
734
转载 s3c2410/s3c2440串口波特率的计算
要正确计算串口波特率,首先要搞清楚芯片的时钟工作原理,这部分在s3c2410/s3c2440datasheet上写的比较详细,但对新手来说结合thisway同志“s3c2410完全开发流程”中的TIMER和CLOCK两个实验,边做实验边看资料,更容易理解。我这里只根据我的失败经验谈一下设置波特率寄存器UBRDIVn的值的计算要注意的一个问题。datasheet上UBRDIVn寄存器部分写着:UART BAUD RATE DIVISOR REGISTERThere are three UART baud ra
2010-09-13 13:52:00
1461
转载 termio.h注释
#ifndef _TERMIOS_H#define _TERMIOS_H#define TTY_BUF_SIZE 1024 // tty 中的缓冲区长度。/* 0x54 is just a magic number to make these relatively uniqe ('T') *//* 0x54 只是一个魔数,目的是为了使这些常数唯一('T') */// tty 设备的ioctl 调用命令集。ioctl 将命令编码在低位字中。// 下面名称TC[*]的含义是t
2010-09-09 17:03:00
4095
转载 s3c2440串口寄存器
s3c2440的UART提供了三个同步串行IO口,第一个串口都可以使用中断模式和DMA模式,换句话说就是UART可以产生一个中断或者是DMA请求使数据在CPU和UART之间进行传递。UART在系统时钟下可以支持最高位传送为115.2K BPS.如果一个外部设备能过UEXTCLK为UART提供时钟,UART可以达到更高的速度。每个UART通道包括两个64字节的FIFO作为接收数据和发送数据使用。s3c2440的UART包括可编程的波特率,红外收发,一个或者两个停止位。5位,6们,7位,8位的数据位和校验检测。
2010-09-02 14:53:00
3176
1
原创 minicom的使用
<br />配置minicom(默认已经安装)<br />1.进入根用户权限<br />2.进入设置界面<br />minicom -s<br />3.进入Serial port setup<br />必须要设置的有两个地方<br />Serial Device : /dev/ttyS0<br />Bps/Par/Bits : 115200 8N1 (波特率,根据板子的设置设定)<br />还有一个地方有可能需要设置一下<br />Hardware Flow Control : No (根据串口驱动情况)<
2010-08-31 11:37:00
650
原创 ifcfg-ethx 文件配置
<br /> ifcfg-ethx网卡配置文件路径 <br />[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0 <br />DEVICE=eth0 #网卡设备名称 <br />ONBOOT=yes #启动时是否激活 yes|no <br />BOOTPROTO=static #协议类型 dhcp bootp none <br />IPADDR=192.168.1.90 #网络IP地址 <br />NETMASK=255.255
2010-08-28 09:12:00
690
原创 Linux下建立交叉编译环境
从网站上下载arm-linux-gcc-3.4.1交叉编译器并复制到xp-linux共享文件夹里,通过共享文件夹xp-linux复制到Linux操作系统根目录下并解压:#cp /mnt/hgfs/xp-linux/arm-linux-gcc-3.4.1.tar.bz2 /#tar jxvf arm-linux-gcc-3.4.1.tar.bz2解压过后,此编译器所在的目录是/usr/local/arm/3.4.1,然后设置环境变量,编辑/etc/profile文件,在文本的最后添加: #vi /etc
2010-08-27 09:40:00
608
原创 虚拟机Linux下配置minicom
一 VMWARE虚拟机添加串口先关闭虚拟机下的LINUX,然后设置一下虚拟机:在vm-〉settings-〉hardware里添加串口 COM1 COM2都加上提醒一下:LINUX设备的编号是从0开始的比如串口1也就是COM1在LINUX里的设备号叫ttyS0串口设置里面要用到 那里添全部路径也就是”/dev/ttyS0″二 为了在虚拟机里面使用minicom与开发板通讯,需要进行一些设置。VMWare6.5+Redhat9VMWare设置添加方式如下:在虚拟机开机之前先选择Edit virtual mac
2010-08-27 09:22:00
1256
原创 VMware-Tools工具的安装
<br /> 建立windows和linux通信的过程如下:<br />为了更好的解决虚拟机与主机的共享问题,VMware公司有一个VMWare-tools,来实现文件共享。这里主要讲的是在Windows下用Vmware虚拟Linux来与windows来共享。<br />下面来介绍一下VMware-tools的安装过程。<br />1、安装客户机系统,linux这里选用最经典的RedHat9。这里假定您已经掌握了虚拟机系统的安装。如果没有掌握,那么就google一下,或者是看一下VMWare的UserMan
2010-08-27 09:13:00
906
1
原创 叹息论
<br /> 吾于是夜自习,行至深处,颇感疲乏,故而有不禁之叹息,偶抬首,猛见三二学友顿视吾,目光诧异,吾顿有愧歉之感,遂低头不语,然心阑许久未息。<br /> 人活到这么大,生活经历这么多,心灵所承受的压力必然随之倍增,此皆缘于个人之思想,换句话说就是不要想太多,不要太压抑,每天笑个两分钟,快意自然临。<br /> 生命是一个奇迹,给你翅膀,你就能飞向蓝天,飞向梦想,飞向自己想去的地方;给你鳍尾,你就能在深海中游弋,自由地探索深海中的未知;给你梦,你就能在生命的蓝图上构画出各种生命的色彩
2010-08-23 17:28:00
510
转载 高速PCB上的电源走线
<br />摘要:本文分析讨论了高速PCB板上由于高频信号的干扰和走线宽度的减小而产生的电源噪声和 压降,并提出了高速PCB的电源模型,采用电源总线网络布线,选取合适的滤波电容,模拟数字地 分开等几个简单有效的方法来解决高速PCB板的噪声和压降问题。<br />0 引言<br /> 随着集成电路工艺和集成度的不断提高,集成电路的工作电压越来越低,速度越来越快。进入新世纪后,CPU和网络都迈入了GHZ的时代,这对于PCB板的设计提出了更高的要求。本文正是基于这种背景下,对高速PCB设计
2010-06-21 15:35:00
2312
Keil+uVision3破解版.part2
2010-04-21
Keil+uVision3破解版.part1
2010-04-21
基于群星Cortex-M3的μCOS-II移植模板的使用
2010-03-03
基于LPC2103的SPI总线技术的应用
2010-03-03
I2C总线驱动程序的实现
2010-03-03
I2C总线信号时序分析
2010-03-03
Keil Software原版光盘的Keil破解文件
2010-07-26
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人