自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

马道人生

码农是人生的一条道,在这条道上走,一是耐力,二是捷径,才能够划出美丽的人生。

  • 博客(24)
  • 资源 (1)
  • 收藏
  • 关注

原创 条件编译--几种常用的格式(在ARM2440中的用法)

在分析天嵌逻辑程序时,遇到条件,突然脑子有点转不过弯来,现在对“条件编译”进行复习:条件编译常用以下几种格式1、#ifdef  标识符程序段1#else程序段2#endif作用:若指定的标识符已经被#define定义,则在程序编译阶段编译程序段1;否则

2012-12-31 16:34:26 878

转载 2440lcd

背景知识1. LCD工作的硬件需求:   要使一块LCD正常的显示文字或图像,不仅需要LCD驱动器,而且还需要相应的LCD控制器。在通常情况下,生产厂商把LCD驱动器会以COF/COG的形式与LCD玻璃基板制作在一起,而LCD控制器则是由外部的电路来实现,现在很多的MCU内部都集成了LCD控制器,如S3C2410/2440等。通过LCD控制器就可以产生LCD驱动器所需要的控制信号来控制ST

2012-12-31 14:19:35 646

原创 ARM9时钟FCLK HCLK PCLK为各个模块提供的时钟频率

2012-12-29 16:34:43 911

原创 ARM9触摸屏

ARM9触摸屏的程序的控制,主要对3个寄存器的控制(1)、ADCCON 设置AD转化频率 /*设置AD转频率*/ preScaler = ADC_FREQ;Uart_Printf("ADC conv,freq. = %dHz\n",preScaler);preScaler = 50000000/ADC_FREQ - 1; //PCLK=50M

2012-12-29 15:33:35 898

原创 ARM9 ADC

ADC:模拟信号转化为数字信号1、S3C2440对于ADC的编程,最要做好两个寄存器的配置(1)、ADCCON控制寄存器的设置/*AD转换频率设置,最大频率为2.5MHz*/rADCCON = (1//setup channel(2)、ADCDAT0寄存器数据的读取int ReadAdc(int channel)

2012-12-28 23:56:33 1509

原创 C中的volatile用法

volatile 变量是随时可能发生变化的,加volatile关键字的变量有关的运算,将不进行编译优化,以免出错。例如: volatile int i=10; int j = i; ... int k = i; volatile 告诉编译器i是随时可能发生变化的,每次使用它的时候必须从i的地址中读取,因而编译器生成的可执行码会重新从i的地

2012-12-28 21:38:14 490

原创 ARM9串口中断

今天学习一下ARM9串口中断部分的内容:1、对于串口发送函数的处理部分:void Uart_SendByte(int data){ if(whichUart==0) { if(data=='\n') { while(!(rUTRSTAT0 & 0x2)); // Delay(

2012-12-28 15:32:41 1241

转载 开发板2440nor flash与nand flash启动的简单比较

nor flash与nand flash启动的简单比较  A,nor flash与nand flash的一些区别1)接口区别NOR FLASH地址线和数据线分开,来了地址和控制信号,数据就出来。NAND Flash地址线和数据线在一起,需要用程序来控制,才能出数据。

2012-12-27 17:58:22 685

转载 mini2440的Nor Flash启动与Nand Flash启动

CPU 处理器- Samsung S3C2440A,主频400MHz,最高533Mhz SDRAM 内存- 在板64M SDRAM- 32bit 数据总线- SDRAM 时钟频率高达100MHz FLASH 存储- 在板 128M Nand Flash, 掉电非易失- 在板 2M Nor Flash,掉电非易失

2012-12-27 17:45:46 880

转载 关于S3C2440时钟设置的理解-FCLK HCLK PCLK

关于S3C2440时钟设置的理解1)FLCK、HCLK和PCLK的关系S3C2440有三个时钟FLCK、HCLK和PCLK手册上说P7-8写到:FCLK is used by ARM920T,内核时钟,主频。HCLK is used for AHB bus, which is used by the ARM920T, the memory controlle

2012-12-27 17:21:53 794

原创 牛人博客

在这里记录一下常见的牛人博客:1、ARM 裸机程序开发参考博客地址  http://blog.csdn.net/shengnan_wu/article/category/1267025说明:结合汇编和c语言混编的方式,详细介绍2440芯片的体系结构,寄存器等2、arm-linux博客http://www.cnblogs.com/armlinux/archiv

2012-12-27 17:01:43 754

转载 SPI和I2C的区别

I2C的数据输入输出用的是一根线,SPI则分为dataIN和dataOUT。由于这个原因,采用I2C时CPU的端口占用少,SPI多一根。但是由于I2C的数据线是双向的,所以隔离比较复杂,SPI则比较容易。所以系统内部通信可用I2C,若要与外部通信则最好用SPI带隔离(可以提高抗干扰能力)。但是I2C和SPI都不适合长距离传输。长距离时就要用485了。        SPI,是英语Seria

2012-12-27 15:24:54 1946

转载 ARM9(S3C2440) LCD

LCD是liquid crystal display 的简称,液晶显示器按驱动方式分为静态驱动,简单矩阵驱动以及主动矩阵驱动。简单矩阵驱动分为扭转向列型(TN)和超扭转向列型(STN)两种。主动矩阵驱动则以TFT为主。 (1)、 TN型驱动液晶,是LCD中最基本的,其他LCD都以TN型改进。他只能将入射光旋转90度,视角只有30度,色彩单一,对比度低,用于电子表和电子计算机

2012-12-27 15:09:19 684

转载 ARM9(S3C2440) Touch Screen

触摸屏工作原理触摸屏分为:电阻式,电容式,声表面波式,红外线扫描式等类型,使用的最多的是4线电阻式的触摸屏。                触摸屏工作流程(1)、设置触摸屏接口为等待中断模式,等待触摸屏被按下。(2)、如果中断(INT_TC)发生,选择X,Y坐标转换模式(X/Y坐标分别转换模式,X/Y坐标自动转

2012-12-27 14:21:23 623

转载 ARM9(S3C2440) ADC

模拟信号/数字信号   (1)、模拟信号是一种在时间上连续,数值上也连续的物理量,具有无穷多的数值,从自然界感知的大部分物理量都是模拟性质的,如速度,压力,温度,声音等。   (2)、数字信号在时间上和数值上均是离散的,而离散信号的值只有真与假,是或不是,因此可以使用二进制中的0与1来表示 。

2012-12-27 13:29:07 504

转载 ARM9(S3C2440) UART

数据通信的方式数据通信的方式基本分为:(1)、并行通信:多条数据线将数据的各位同属传送。                      特点:传输速度快,适用于短距离通信。(2)、串行通信:一条数据线将数据一位一位的顺序传送。                      特点:线路简单,低成本,适用于远距离通信。          一:  异步通信:

2012-12-26 23:49:55 581

转载 ARM9(S3C2440)时钟与定时器

时钟概念一、时钟脉冲:一个按一定电压幅度,一定时间间隔连续发出的脉冲信号。二、时钟频率:单位时间(如一秒)内产生的时钟脉冲个数。           时钟作用         时钟信号时时序逻辑(如一些芯片要一定的延时时间才能工作)的基础,它用于决定逻辑单元中的状态何时更新。数字芯片中众多的晶体管都工作在开关状态,他们的导通和关断动作无不是按照时钟信号的节奏

2012-12-26 23:43:03 904

原创 按键控制蜂鸣器--采用中断方式(3)

对按键中断控制蜂鸣器程序进行如下的修改:#define GLOBAL_CLK 1#include #include #include "def.h"#include "option.h"#include "2440addr.h"#include "2440lib.h"#include "2440slib.h"#include "mmu.h"#include "profile

2012-12-26 19:40:28 6846

原创 ARM中断方式理解(2)

今天学习了ARM中断内容,根据芯片资料,截取了几个重要的图标作为理解:1、中断请求流程图SRCPND-->INTMOD-->INTMSK-->PRIORITY-->INTPND其中:SRCPND-->中断源,感应那个引脚引起中断,最接近外部硬件INTPND-->中断请求,经过优先级后,选择哪个中断先请求处理

2012-12-26 19:24:33 877

原创 ARM中断控制寄存器介绍(1)

1、s3c2410的中断异常处理模块总共由以下寄存器构成SRCPND(SOURCE PENDING REGISTER)INTMOD(INTERRUPT MODE REGISTER)INTMSK(INTERRUPT MASK REGISTER)PRIORITY( PRIORITY REGISTER)INTPND(INTERRUPT PENDING RE

2012-12-26 01:39:40 1381

原创 影响CPSR状态寄存器的ARM汇编指令--总结

最近学习了ARM寄存器寻址方式和ARM指令,现在总结如下:1、影响CPSR状态寄存器的ARM汇编指令(1)、带S的指令有MOVS-->数据传送指令(只能用在寄存器和寄存器之间)MVNS-->数据传送指令(和mov区别是,不仅进行数据传输,还进行数据取反)ADDS-->加法指令SUBS-->减法指令MULS-->乘法指令ANDS-->逻辑与

2012-12-26 01:01:11 4526

原创 裸机程序-led流水灯

现阶段学习ARM裸机程序,今天修改写了LED流水灯简单程序:程序代码修改如下:#define GLOBAL_CLK 1#include #include #include "def.h"#include "option.h"#include "2440addr.h"#include "2440lib.h"#include "2440slib.h"#in

2012-12-25 16:07:43 897

转载 进程扇和进程链

fork()函数创建子进程以后,fork拷贝了父进程的内存映像,这样子进程就收到一份父进程地址空间的拷贝,之后子进程与父进程分别在自己的地址空间执行相同的指令。 fork()的返回值是允许用来区分父进程还是子进程的。函数向父进程返回子进程的进程ID,向子进程返回0,这样就可以在代码中加以区分,是创建子进程以后让父子进程执行不同的操作了。 今天尝试的是通过循环调用fo

2012-12-06 00:45:42 1198

原创 进程间通信--信号量

进程间通信--信号量信号灯,主要作用:对于临界资源的一种保护机制。但是下面的程序当中,自己不是很理解。1、一个是,对于什么样的资源进行保护,好像程序里面体现的不是很好,还是自己读不懂。2、对于进程链创建-->打印的结果。不是很明白。3、从请求资源到获取原子操作和结束原子操作过程,真的不太明白为什么会这样子写。#include #include #include

2012-12-03 00:52:03 538

wince-LED驱动应用程序

这是wince下面一个简单的led驱动程序,对于初学者,能够比较轻松的了解wince下流驱动的工作原理!

2011-04-06

空空如也

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

TA关注的人

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