ARM开发板原理图
- 格式:pdf
- 大小:1.29 MB
- 文档页数:4
我的开发板是s3c2440。
程序简介:开发板有4个灯,6个按键,通过程序实现通过按下按键来使灯亮或灯灭,而且按键让蜂鸣器发声。
编程流程:要是灯亮,必须要知道控制灯的寄存器,当然也要知道按键和蜂鸣器的控制器。
这就要查询开发板的原理图和开发板手册了。
灯为led你通过搜索原理图,会找到对应的灯的电路的连接,如下图:然后你会发现与led连接的是nled,然后搜索nled,得到下图:看此图,你会发现控制4个灯的分别是GPB5,GPB6,GPB7,GPB8,这样你就可以在开发板的手册上查询GPB的内存地址了。
如下图:上面图片的解释:GPBCON是灯的控制器,GPBDAT是灯的状态。
灯亮是“输出”,因此GPBCON 相应的位为01.长话短说吧:也就是说要控制灯1亮,首先设置GPBCON的10-11位为01,然后设置状态GPBDAT第5位为0(灯是低电平有效).这样灯就亮了。
可能理论不好理解。
下面先附上源代码:#include "y1.h" //我的头文件,自己实现吧,名字可以改变#define GPBCON (*(volatile unsigned *)0x56000010) //灯的控制寄存器的内存地址#define GPBDAT (*(volatile unsigned *)0x56000014) //灯的状态寄存器的内存地址(低电平有效)#define GPGCON (*(volatile unsigned *)0x56000060) //蜂鸣器的控制寄存器内存地址#define GPGDAT (*(volatile unsigned *)0x56000064) //蜂鸣器的状态寄存器内存地址(高电平有效)void led_on(int i){ //使灯亮的函数if(i>4) i = i%4;GPBDAT = GPBDAT & ~(1<<(i+5));}void led_off(int i){ //使灯灭的函数if(i>4) i = i%4;GPBDAT = GPBDAT | (1<<(i+5));}void init(){ //主函数要调用的方法,寄存器的初始化int i1,i2,i3,i4,i5;GPBCON = 0X15401;GPGCON = 0;GPGDAT = 0xffff;led_off(0);led_off(1);led_off(2);led_off(3);while(1){i1 = GPGDAT & 1;if(i1 == 1){led_off(0);}else{led_on(0);}i2 = GPGDAT >> 3 & 1; if(i2 == 1){led_off(1);}else{led_on(1);}i3 = GPGDAT >> 5 & 1 ; if(i3 == 1){led_off(2);}else{led_on(2);}i4 = GPGDAT >> 6 & 1 ; if(i4 == 1){led_off(3);}else{led_on(3);}i5 = GPGDAT >> 7 & 1 ; if(i5 == 1){ GPBDAT = 0x1e0;}else{GPBDAT = 1;}}}void delay(){ //延迟函数int i,j;for(i=0;i<200;i++)for(j=0;j<65536;j++);}。
开发板、单片机、ARM区别及简介1、开发板●开发板(demoboard)是用于嵌入式系统开发的电路板,包括一系列硬件组件,例如中央处理器,内存,输入设备,输出设备,数据路径/总线和外部资源接口。
●开发板通常由嵌入式系统开发人员根据开发需要定制,也可以由用户进行研究和设计。
开发板供初学者了解和学习系统的硬件和软件。
同时,一些开发板还提供了基本的集成开发环境以及软件源代码和硬件原理图。
常见的开发板包括51,ARM,FPGA和DSP开发板。
●简而言之,它指的是用于学习的许多单芯片外围设备的集成,例如LED灯,数字管,按钮,行和行按钮,步进电机,伺服电机,LCD显示器等。
实验,开发等。
开发板是一种实验设备(SCM编程)。
2、单片机●单片机不是执行特定逻辑功能的芯片,而是将计算机系统集成到芯片上的芯片。
它等效于微型计算机。
与计算机相比,单芯片计算机仅缺少I/O设备。
●简而言之:芯片变成了计算机。
它体积小,重量轻,价格低廉,为学习,应用和开发提供了便利的条件。
同时,学习使用单片机是理解计算机原理和结构的最佳选择。
●MCU开发板在官方ARM开发板的基础上增加了外围设备后,配备了许多功能接口,例如扩展的TFT-LCD,LVDS接口,触摸屏,VGA,矩阵键盘,外部总线接口,CAN,SPI,PWM,高速USBHOST\Device,SD卡、RS232\RS485串行端口,音频,MIC等常用接口,国内领先的嵌入式解决方案制造商经常使用具有多个核心平台的ARM开发板,因此各种技术公司的研发工程师可以轻松测试ARM开发板,而R&D公司产品可以通过开发板中的数据文件快速开发公司产品并缩短研发周期。
●在批量生产产品之前,单片机就用于产品的设计和开发,当我们有一定的理论基础研究知识时,单片机开发板就是我们的实用工具(PIC单片机)),通过单片机开发板,我们可以做一些实验来掌握学到的知识。
●单片机的应用领域非常广泛,例如智能仪表,实时工业控制,通讯设备,导航系统,家用电器等。
做一个简单的、自己学习用的arm开发板,不仅可以节约成本,还能享受其中的乐趣。
今天我就将自己在制作嵌入式开发板过程中的一些经验和步骤讲给大家,希望对大家有所帮助!一、原理图的设计首先,你先要考虑自己打算做一个什么样的板,是为了完成某个项目,还是做个学习用的板。
明确目的后,开始设计原理图。
目前我们常用的ARM开发板多是三星的,也有PHILIPS的。
这两大类芯片在网上可以找到很丰富的资源,包括原理图和测试程序,尤其是44B0的芯片,资料几乎是满网飞了。
找一个芯片的原理图,在其基础上做些改动,使之更适合自己的实际应用。
ARM7的芯片使用起来会稍微简单些,毕竟其原理构造和普通的51单片机有些类似,不需要太费事就可以完成。
对于ARM9的,设计原理图会比较麻烦。
建议采用核心板的方式,把ARM芯片和存储器放在一个小板上,然后再做底板,这样即使设计出了问题,也方便重新修改设计。
原理图方面我就不多罗嗦了,网上大把参照图,DOWN下来自己修改就可以了,确定原理图无误后,就需要开始布板了。
对于ARM7,速度比较低的那种(100M以下的),板只要布的合适就可以了,没有什么特别值得注意的地方,有些信号线上可能需要串上一些小电阻,做高频电阻匹配用。
对于ARM9的板,最少需要4层板。
(如果双面能把线布下,双面板也可以的)。
这里也许有人会问,4层板是否够用。
我觉得是完全够的。
我自己设计过一个S3C2410核心板,用4层板做,在200M下也能正常工作。
另外,我从网上下了个6层板的PCB,我把它改成了4层板,虽还没来得及调试,我估计工作起来也不是问题。
为什么我这么说呢,因为看整个电路就可以大概知道一些,只要你布的板把电源和时钟处理的得当,其他逻辑信号线不是什么太大问题。
当然了,前提是逻辑信号不能乱布。
这里需要说明一点,做4层板完全是为了自己学习用,因为做6层板的价格太高了,个人承担不起。
但如果你是打算来做工业设备或实际项目,还是使用6层板吧,这样能够在硬件上起到一定的保障作用。