资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,嵌入式系统技术与设计,第,6,章,S3C2410,系统接口,操作原理及实验,ARM体系结构的特点,6.1,ARM处理器工作模式,6.2,寄存器组织,6.3,流 水 线,6.4,ARM,存储系统,6.5,异 常,6.6,ARM,处理器的寻址方式,6.7,ARM,处理器的指令集,6.8,ARM,处理器的指令集,6.9,在第,5,章接口电路的基础上,本章讲解该系统的各接口原理,并辅以实验代码加以说明。通过本章,读者能掌握,S3C2410,处理器的常用接口开发。,本章主要内容:,(,1,),I/O,接口实验,(,2,)串口通信实验,(,3,)中断实验,(,4,)键盘控制实验,(,5,)实时时钟实验,(,6,)看门狗实验,(,7,)串行通信实验,(,8,),A/D,转换实验,(,9,),Nand Flash,读写实验,6.1 I/O接口实验,ARM,内核采用,RISC,体系结构。,RISC,技术的主要特点参见,1.3,节。,ARM,体系结构的主要特征如下(在本书的后续章节中将对这些特征做详细讲解):,(,1,)大量的寄存器,它们都可以用于多种用途;,(,2,),Load/Store,体系结构;,(,3,)每条指令都条件执行;,(,4,)多寄存器的,Load/Store,指令;,(,1,)掌握,S3C2410X,芯片的,I/O,控制寄存器的配置。,(,2,)通过实验掌握,ARM,芯片使用,I/O,端口控制,LED,显示。,(,3,)了解,ARM,芯片中复用,I/O,接口的使用方法。,6.1.1,实验目的,(,1,)硬件:,Embest,ARM,教学实验系统、,ULINK USB-JTAG,仿真器套件、,PC,机。,(,2,)软件:,MDK,集成开发环境,,Windows 98/2000/NT/XP,。,6.1.2,实验设备,编写程序,控制实验平台的发光二极管,LED1,、,LED2,、,LED3,、,LED4,,使它们有规律地点亮和熄灭,具体顺序如下:,LED1,亮,LED2,亮,LED3,亮,LED4,亮,LED1,灭,LED2,灭,LED3,灭,LED4,灭全亮全灭,如此反复。,6.1.3,实验内容,S3C2410X,芯片上共有,71,个多功能的输入,/,输出引脚,它们分为,7,组,I/O,端口:,(,1,),1,个,23,位的输出端口(端口,A,)。,(,2,),2,个,11,位的输入,/,输出端口(端口,B,、,H,)。,(,3,),4,个,16,位的输入,/,输出端口(端口,C,、,D,、,E,、,G,)。,(,4,),1,个,8,位的输入,/,输出端口(端口,F,)。,6.1.4,实验原理,在运行程序之前必须对每个用到的引脚功能进行设置,如果某些引脚的复用功能没有使用,可以先将该引脚设置为,I/O,端口。,(,1,)端口控制寄存器(,GPACON-GPHCON,),。,(,2,)端口数据寄存器(,GPADAT-GPHDAT,)。,(,3,)端口上拉寄存器(,GPBUP-GPHUP,)。,(,4,)外部中断控制寄存器(,EXTINTN,)。,1S3C2410X I/O口常用的控制寄存器,表,6-1,端口,F,控制寄存器,寄存器,地 址,读,/,写,描 述,复位值,GPFCON,0x56000050,R/W,端口,F,配置寄存器,0x0,GPFDAT,0x56000054,R/W,端口,F,数据寄存器,未定义,GPFUP,0x56000058,R/W,端口,F,上拉控制寄存器,0x0,Reserved,0x5600005C,保留,未定义,表,6-2 GPFCON,寄存器,GPFCON,位,描,述,GPF7,15:14,00=Input 01=Output,10=EINT7 11=Reserved,GPF6,13:12,00=Input 01=Output,10=EINT6 11=Reserved,GPF5,11:10,00=Input 01=Output,10=EINT5 11=Reserved,GPF4,9:8,00=Input 01=Output,10=EINT4 11=Reserved,GPF3,7:6,00=Input 01=Output,10=EINT3 11=Reserved,GPF2,5:4,00=Input 01=Output,10=EINT2 11=Reserved,GPF1,3:2,00=Input 01=Output,10=EINT1 11=Reserved,GPF0,1:0,00=Input 01=Output,10=EINT0 11=Reserved,表,6-3 GPFDAT,寄存器,GPFDAT,位,描 述,GPF7:0,7:0,当端口被配置成输入时,外部数据可以从对应的端口中读出;当端口被配置成输出时,写入该寄存器的数据会被送到对应的引脚上;当端口被配置成功能脚时,此寄存器未定义,表,6-4 GPFUP,寄存器,GPFUP,位,描 述,GPF7:0,7:0,0,:使能对应引脚的上拉功能,1,:对应引脚的上拉功能无效,2电路设计,图,6-1 LED,接线原理图,1,准备实验环境,2,串口接收设置,3,打开实验例程,4,观察实验结果,6.1.5,实验操作步骤,6.2,串口通信实验,(,1,)了解,S3C2410X,处理器的,UART,相关控制寄存器的使用。,(,2,)熟悉,ARM,处理器系统硬件电路中,UART,接口的设计方法。,(,3,)掌握,ARM,处理器串行通信的软件编程方法。,6.,2,.1,实验目的,(,1,)硬件:,Embest,EduKit,-,实验平台、,ULINK2,仿真器套件、,PC,机。,(,2,)软件:,MDK,集成开发环境、,Windows 98/2000/NT/XP,。,6.,2,.2,实验设备,(,1,)编写,S3C2410X,处理器的串口通信程序。,(,2,)监视串行口,UART0,动作。,(,3,)将从,UART0,接收到的字符串回送显示。,6.,2,.3,实验内容,1S3C2410X串行通信(UART)单元,2波特率的产生,3UART通信操作,6.2.4,实验原理,(,1,),UART,行控制寄存器,ULCONn,(,2,),UART,控制寄存器,UCONn,4UART控制寄存器,表,6-5,UCONn,的含义,UCONn,位,描 述,初 始 值,Clock Selection,10,0,:,PLK,做比特率发生,1,:,ULK,做比特率发生,0,Tx,Interrupt Type,9,0,:,Tx,中断脉冲触发,1,:,Tx,中断电平触发,0,Rx Interrupt Type,8,0,:,Rx,中断脉冲触发,1: Rx,中断电平触发,0,Rx Time Out Enable,7,0,:接收超时中断不允许,1:,接收超时中断允许,0,Rx Error Status,Interrupt Enable,6,0,:不产生接收错误中断,1:,产生接收错误中断,0,Loopback Mode,5,0,:正常模式,1:,发送直接传给接收方式(,Loopback,),0,Reserved,4,0,:正常模式发送,1:,发送间断信号,0,Transmit Mode,3:2,发送模式选择,00,:不允许发送,01,:中断或查询模式,10,:,DMA0,请求(,UART0,),DMA3,请求(,UART2,),11: DMA1,请求(,UART1,),00,Receive Mode,1:0,接收模式选择,00,:不允许接收,01,:中断或查询模式,10,:,DMA0,请求(,UART0,),DMA3,请求(,UART2,),11,:,DMA1,请求(,UART1,),00,(,3,),UART MODEM,控制寄存器,UMCONn(n,=,0,或,1),表,6-6,UMCONn,位,描 述,初 始 值,Reserved,7:5,保留,必须全为,0,00,Auto Flow Control (AFC),4,0,:不允许使用,AFC,模式,1,:允许使用,AFC,模式,0,Reserved,3:1,保留,必须全为,0,00,Request to Send,0,0:,不激活,nRTS,1,:激活,nRTS,0,(,4,)发送寄存器,UTXH,和接收寄存器,URXH,(,5,)波特率分频寄存器,UBRDIV,5UART初始化代码,6RS232接口电路,图,6-2 UART0,与,S3C2410,的连接图,6.2.5,实验操作步骤,1准备实验环境,(,1,)把光盘,CodeChapter6,文件夹的内容复制到主机(如果已经复制,跳过该操 作);,(,2,)使用,EduKit,-,目标板附带的串口线连接目标板上,UART0,和,PC,机串口,COMx,,并连接好,ULINK2,仿真器套件。,在,PC,机上运行,Windows,自带的超级终端串口通信程序(波特率为,115,200Bd,、,1,位停止位、无校验位、无硬件流控制)如图,6-3,所示;或者使用其他串口通信程序。,2串口接收设置,3打开实验例程,4观察实验结果,图,6-3,Embest,ARM,教学系统超级终端配置,6.3 中 断 实 验,6.3.1,实验目的,(,1,)通过实验掌握,S3C2410X,的中断控制寄存器的使用。,(,2,)通过实验掌握,S3C2410X,处理器的中断响应过程。,(,3,)通过实验掌握不同中断触发方式下中断产生的过程。,(,4,)通过实验掌握,ARM,处理器的中断方式和中断处理过程。,(,5,)通过实验掌握,ARM,处理器中断处理的软件编程方法。,(,1,)硬件:,Embest,EduKit,-,实验平台、,ULINK2,仿真器套件、,PC,机。,(,2,)软件:,Vision IDE,、,Windows 98/2000/NT/XP,。,6.3.2,实验设备,编写中断服务程序,实现下列功能。,(,1,)通过,UART0,选择中断触发方式,使能外部中断,EINT0,、,EINT11,。,(,2,)在不同的中断触发方式下,使用,Embest,EduKit,-,实验平台的按钮,SB1202,触发,EINT0,,同时在超级终端的主窗口中显示外部中断号。,(,3,)在不同的中断触发方式下,使用,Embest,EduKit,-,实验平台的按钮,SB1203,触发,EINT11,,同时在超级终端的主窗口中显示外部中断号。,6.3.3,实验内容,6.3.4,实验原理,1S3C2410X的中断,图,6-4 S3C2410X,的中断控制器,(,1,)程序状态寄存器的,F,位和,I,位。,(,2,)中断模式(,INTMOD,)。,(,3,)中断挂起寄存器(,INTPND,)。,(,4,)中断屏蔽寄存器(,INTMSK,)。,2S3C2410X的中断控制,3S3C2410X的中断源,表,6-7 S3C2410X,的中断源,中 断 源,描 述,中断仲裁组,INT_ADC,ADC EOC and Touch interrupt (INT_ADC/INT_TC),ARB5,INT_RTC,RTC alarm interrupt,ARB5,INT_SPI1,SPI1 interrupt,ARB5,INT_UART0,UART0 Interrupt (ERR,、,RXD and TXD),ARB5,INT_IIC,IIC interrupt,ARB4,INT_USBH,USB Host interrupt,ARB4,INT_USBD,USB Device interrupt,ARB4,Reserved,Reserved,ARB4,INT_UART1,UART1 Interrupt (ERR,、,RXD and TXD),ARB4,INT_SPI0,SPI0 interrupt,ARB4,INT_SDI,SDI interrupt,ARB3,INT_DMA3,DMA channel 3 interrupt,ARB3,INT_DMA2,DMA channel 2 interrupt,ARB3,INT_DMA1,DMA channel 1 interrupt,ARB3,INT_DMA0,DMA channel 0 interrupt,ARB3,INT_LCD,LCD interrupt (,INT_FrSyn,and,INT_FiCnt,),ARB3,中 断 源,描 述,中断仲裁组,INT_UART2,UART2 Interrupt (ERR,、,RXD and TXD),ARB2,INT_TIMER4,Timer4 interrupt,ARB2,INT_TIMER3,Timer3 interrupt,ARB2,INT_TIMER2,Timer2 interrupt,ARB2,INT_TIMER1,Timer1 interrupt,ARB2,INT_TIMER0,Timer0 interrupt,ARB2,INT_WDT,Watch-Dog timer interrupt,ARB1,INT_TICK,RTC Time tick interrupt,ARB1,nBATT_FLT,Battery Fault interrupt,ARB1,Reserved,Reserved,ARB1,EINT8_23,External interrupt 8,23,ARB1,EINT4_7,External interrupt 4,7,ARB1,EINT3,External interrupt 3,ARB0,EINT2,External interrupt 2,ARB0,EINT1,External interrupt 1,ARB0,EINT0,External interrupt 0,ARB0,(,1,)源挂起寄存器(,SRCPND,)。,4S3C2410X的中断控制寄存器,表,6-8 SRCPND,描述,寄存器,地 址,读,/,写,描 述,复 位 值,SRCPND,0x4A000000,R/W,0,中断没有发出请求,1,中断源发出中断请求,0x00000000,(,2,)中断模式寄存器(,INTMOD,)。,表,6-9 INTMOD,描述,寄 存 器,地 址,读,/,写,描 述,复 位 值,INTMOD,0x4A000004,R/W,0,IRQ,模式,1,FIQ,模式,0x00000000,(,3,)中断屏蔽寄存器(,INTMSK,)。,表,6-10 INTMSK,描述,寄 存 器,地 址,R/W,描 述,复 位 值,INTMSK,0x4A000008,R/W,0,允许响应中断请求,1,中断请求被屏蔽,0xFFFFFFFF,(,4,)中断挂起寄存器(,INTPND,)。,表,6-11 INTPND,描述,寄 存 器,地 址,R/W,描 述,复 位 值,INTPND,0x4A000010,R/W,0,未发生中断请求,1,中断源发出中断请求,0x00000000,(,5,),IRQ,偏移寄存器。,表,6-12 INTOFFSET,描述,寄 存 器,地 址,R/W,描 述,复 位 值,INTOFFSET,0x4A000014,R,指示中断请求源的,IRQ,模式,0x00000000,(,6,)外部中断控制寄存器(,EXTINTn,)。,(,7,)外部中断屏蔽寄存器(,EXTMASK,)。,表,6-13 EXTMASK,描述,寄 存 器,地 址,R/W,描 述,复 位 值,EXTMASK,0x560000A4,R/W,外部中断屏蔽标志,0x00FFFFF0,5电路原理,图,6-5 S3C2410X,中断实验电路图,6.3.5,实验操作步骤,1,准备实验环境,2,串口接收设置,3,打开实验例程,4,观察实验结果,图,6-6,Vision IDE,中断控制器窗口,6.3.6,实验参考程序,1中断初始化程序,2中断服务程序,6.4,键盘控制实验,6.4.1,实验目的,(,1,)通过实验掌握键盘控制与设计方法。,(,2,)熟练编写,ARM,核处理器,S3C2410X,中断处理程序。,(,1,)硬件:,Embest,EduKit,-,实验平台、,Embest,ARM,标准,/,增强型仿真器套件、,PC,机。,(,2,)软件:,MDK,集成开发环境、,Windows 98/2000/NT/XP,。,6.4.2,实验设备,(,1,)使用实验板上,5x4,用户键盘,编写程序接收键盘中断。,(,2,)通过,IIC,总线读入键值,并将读到的键值发送到串口。,6.4.3,实验内容,6.4.4,实验原理,1常规键盘电路设计原理,2使用ZLG7290的键盘电路设计原理,图,6-7 ZLG7290,引脚图,6.4.5,实验设计,1键盘硬件电路设计,(,1,)键盘连接电路,(,2,)键盘控制电路,(,3,)工作过程,图,6-8 54,键盘连接电路,6.4.6,实验操作步骤,1准备实验环境,2串口接收设置,3打开实验例程,4观察实验结果,图,6-9 54,键盘控制电路,6.4.7,实验参考程序,1,键盘控制初始化,2,中断服务程序,6.5,实时时钟实验,6.5.1,实验目的,(,1,)了解实时时钟的硬件控制原理及设计方法。,(,2,)掌握,S3C2410X,处理器的,RTC,模块程序设计方法。,6.5.2,实验设备,(,1,)硬件:,Embest,ARM,教学实验系统、,ULINK USB-JTAG,仿真器套件、,PC,机。,(,2,)软件:,MDK,集成开发环境、,Windows 98/2000/NT/XP,。,6.5.3,实验内容,学习和掌握,Embest,ARM,教学实验平台中,RTC,模块的使用,编写应用程序,修改时钟日期及时间的设置,以及使用,Embest,ARM,教学系统的串口,在超级终端显示当前系统时间。,6.5.4,实验原理,1实时时钟,2S3C2410X实时时钟单元,图,6-10 S3C2410X,处理器的,RTC,功能框图,6.5.5,实验设计,1硬件电路设计,图,6-11,实时时钟外围电路,(,1,)时钟设置,(,2,)时钟显示,2软件程序设计,6.5.6,实验操作步骤,1准备实验环境,2串口接收设置,3运行实验例程,4观察实验结果,图,6-12,Embest,ARM,教学系统超级终端配置,6.5.7,实验参考程序,1,RTC,报警控制程序,2,时钟设置控制程序,6.6,看门狗实验,(,1,)了解看门狗的作用。,(,2,)掌握处理器,S3C2410X,处理器看门狗控制器的使用。,6.6.1,实验目的,6.6.2,实验设备,(,1,)硬件:,Embest,EduKit,-,实验平台、,ULINK2,仿真器、,PC,机。,(,2,)软件:,RealView,MDK,集成开发环境、,Windows 98/2000/NT/XP,。,6.6.3,实验内容,通过使用,S3C2410,处理器集成的看门狗模块,对其进行如下操作。,(,1,)掌握看门狗的操作方式和用途。,(,2,)对看门狗模块进行软件编程,实现看门狗的定时功能和复位功能。,6.6.4,实验原理,1看门狗概述,图,6-13 S3C2410X,的看门狗的功能框图,(,1,),看门狗定时器控制寄存器(,WTCON,)。,2看门狗定时器寄存器组,表,6-14 WTCON,描述,寄 存 器,地 址,读,/,写,描 述,初 始 值,WTCON,0x53000000,读,/,写,看门狗定控制寄存器,0x8021,表,6-15 WTCON,的标识位,WTCON,Bit,描 述,初 始 值,Prescaler,Value,15:8,预装比例值,有效范围值为,0,255,0x80,Reserved,7:6,保留,00,Watchdog Timer,5,使能和禁止看门狗定时器,禁止看门狗定时器,使能看门狗定时器,0,Clock Select,4:3,这两位决定时钟分频因素,00:1/16 01:1/32,10:1/64 11:1/128,00,Interrupt Generation,2,中断的禁止和使能,0=,禁止中断产生,1=,使能中断产生,0,Reserved,1,保留,0,Reset,Enable/Disable,0,禁止很使能看门狗复位信号的输出,1=,看门狗复位信号使能,0=,看门狗复位信号禁止,1,(,2,)看门狗定时器数据寄存器(,WTDAT,)。,表,6-16 WTDAT,描述,寄 存 器,地 址,读,/,写,描 述,初 始 值,WTDAT,0x53000004,读,/,写,看门狗数据寄存器,0x8000,(,3,)看门狗计数寄存器(,WTCNT,)。,表,6-17 WTCNT,描述,寄 存 器,地 址,读,/,写,描 述,初 始 值,WTCNT,0x53000008,读,/,写,看门狗计数器当前值,0x8000,6.6.5,实验设计,1软件程序设计,2看门狗在函数delay()中的使用,6.6.6,实验操作步骤,1,准备实验环境,2,串口接收设置,3,打开实验例程,4,观察实验结果,6.6.7,实验参考程序,6.7 IIC串行通信实验,(,1,)通过实验掌握,IIC,串行数据通信协议的使用。,(,2,)掌握,EEPROM,器件的读写访问方法。,(,3,)通过实验掌握,S3C2410X,处理器的,IIC,控制器的使用。,6.7.1,实验目的,6.7.2,实验设备,(,1,)硬件:,Embest,EduKit,-,实验平台、,ULINK2,仿真器、,PC,。,(,2,)软件:,RealView,IDE,、,Windows 98/2000/NT/XP,。,6.7.3,实验内容,(,1,)编写程序对实验板上,EEPROM,器件,AT24C04,进行读写访问。,(,2,)写入,EEPROM,某一地址,再从该地址读出,输出到超级终端。,(,3,)把读出内容和写入内容进行比较,检测,S3C2410X,处理器通过,IIC,接口,是否可以正常读写,EEPROM,器件,AT24C04,。,6.7.4,实验原理,1,IIC,接口及,EEPROM,图,6-14 IIC,总线内部结构框图,图,6-15 AT24,系列,EEPROM,的,DIP8,封装示意图,2IIC总线的读写控制逻辑,图,6-16 IIC,总线信号的时序,(,1,),AT24C04,结构与应用简述。,(,2,)设备地址(,DADDR,)。,(,3,),AT24CXX,的数据操作格式。,3EEPROM读写操作,图,6-17,任意写一个字节,图,6-18,写,n,个字节,图,6-19,任意读一个字节,图,6-20,读,n,个字节,(,1,),S3C2410X IIC,接口。,4S3C2410X处理器IIC接口,表,6-18IICCON,寄存器,寄 存 器,地 址,读,/,写,描 述,复 位 值,IICCON,0x54000000,R/W,IIC,总线控制寄存器,0x0x,表,6-19IICCON,描述,IICCON,位,描 述,初始值,Acknowledge,generation,注,1,7,IIC,总线应答使能位,0,:禁止,,1,:使能,在输出模式下,,IICSDA,在,ACK,时间被释放,在输入模式下,,IICSDA,在,ACK,时间被拉低,0,Tx,clock source,selection,6,IIC,总线发送时钟预分频选择位,0,:,IICCLK =,fPCLK,/16,1,:,IICCLK =,fPCLK,/512,0,Tx,/Rx Interrupt,注,3,5,IIC,总线中断使能位,0,:禁止,,1,:使能,0,Interrupt pending,flag,注,2,4,IIC,总线未处理中断标志。不能对这一位写入,1,,置,1,是系统自动产生的。当这位被置,1,,,IICSCL,信号将被拉低,,IIC,传输也停止了。如果想要恢复操作,将该位清零,0,:,当读出,0,时,没有发生中断; 当写入,0,时,清除未决条件并恢复中断响应,1,: 当读出,1,时,发生了未决中断; 不可以进行写入操作,0,Transmit clock,value,3:0,发送时钟预分频器的值,这四位预分频器的值决定了,IIC,总线进行发送的时钟频率,对应关系如下:,Tx,clock = IICCLK/(IICCON3:0+1).,Undefined,表,6-20 IICSTAT,描述,IICSTAT,位,描 述,初 始 值,模式选择,7:6,IIC,总线主从,发送,/,接收模式选择位,00,:从接收模式;,01,:从发送模式;,10,:主接收模式,11,:主发送模式,0,忙信号状态,/,起始,/,停止条件,5,IIC,总线忙信号状态位,0,:读出为,0,,表示状态不忙;写入,0,,产生停止条件,1,:读出为,1,,表示状态忙;写入,1,,产生起始条件,IICDS,中的数据在起始条件之后自动被送出,0,串行数据输出使能,4,IIC,总线串行数据输出使能,/,禁止位,0,:禁止发送,/,接收;,1,:使能发送接收,0,仲裁状态位,3,IIC,总线仲裁程序状态标志位,0,:总线仲裁成功,1,:总线仲裁失败,0,从地址状态标志位,2,IIC,总线从地址状态标志位,0,:在探测到起始或停止条件时,被清零,1,:如果接收到的从器件地址与保存在,IICADD,中的地址相符,则置,1,0,0,地址状态标志位,1,IIC,总线,0,地址状态标志位,0,:在探测到起始或停止条件时,被清零,1,:如果接收到的从器件地址为,0,,则置,1,0,应答位状态标志,0,应答位(最后接收到的位)状态标志,0,:最后接收到的位为,0,(,ACK,接收到了,),1,:最后接收到的位为,1,(,ACK,没有接收到),0,表,6-21 IICADD,描述,IIC,ADD,位,描 述,初 始 值,从器件地址,7:0,7,位从器件地址:如果,IICSTAT,中的串行数据输出使能位为,0,,,IICADD,就变为写使能。,IICADD,总为可读,表,6-22 IICDS,描述,IIC,DS,位,描 述,初 始 值,数据移位寄存器,7:0,IIC,接口发送,/,接收数据所使用的,8,位数据移位寄存器:当,IICSTAT,中的串行数据输出使能位为,1,,则,IICDS,写使能。,IICDS,总为可读,(,2,)使用,S3C2410X IIC,总线读写方法。,表,6-23,单字节操作描述,START_C,Addr(7bit) W,ACK,DATA(1Byte),ACK,STOP_C,表,6-24,多字节写操作描述,START_C,OPADDR(7bit) W,ACK,Addr,DATA(nByte,),ACK,STOP_C,表,6-25,单字节读串行存储器描述,START_C,Addr(7bit) R,ACK,DATA(1Byte),ACK,STOP_C,START_C,P & R,ACK,Addr,ACK,P & R,ACK,DATA(nByte,),ACK,STOP_C,表,6-26,同一页面的多字节操作描述,6.7.5,实验设计,1,程序设计,2,电路设计,6.7.6,实验操作步骤,1准备实验环境,2串口接收设置,3打开实验例程,图,6-21 IIC,主发送程序设计流程图(,S3C2410X,),图,6-22 IIC,主接收程序设计流程图(,S3C2410X,),图,6-23 AT24C04,控制电路,6.7.7,实验参考程序,1,初始化及测试主程序,2,中断服务程序,3,IIC,写,AT24C04,程序,4,IIC,读,AT24C04,程序,6.8 A/D转换实验,(,1,)通过实验掌握模数转换(,A/D,)的原理。,(,2,)掌握,S3C2410X,处理器的,A/D,转换功能。,6.8.1,实验目的,6.8.2,实验设备,(,1,)硬件:,Embest,EduKit,-,实验平台、,Embest,ARM,标准,/,增强型仿真器套件、,PC,机。,(,2,)软件:,MDK,集成开发环境、,Windows 98/2000/NT/XP,。,6.8.3,实验内容,设计分压电路,利用,S3C2410X,集成的,A/D,模块,把分压值转换为数字信号,并通过超级终端和数码管观察转换结果。,6.8.4,实验原理,1A/D转换器,2A/D转换的一般步骤,3S3C2410X处理器的A/D转换,4S3C2410X处理器A/D转换器的使用,表,6-27 ADCCON,描述,ADCCON,位,描 述,初 始 值,ECFLG,15,A/D,转换结束标志,0: A/D,转换正在进行,1: A/D,转换结束,0,PRSCEN,14,A/D,转换预分频允许,0,:不允许预分频,1,:允许预分频,0,PRSCVL,13:6,预分频值,PRSCVL,0xFF,SEL_MUX,5:3,模拟信道输入选择,000 = AIN0,001 = AIN1,010 = AIN2,011 = AIN3,100 = AIN4,101 = AIN5,110 = AIN6,111 = AIN7,0,STDBM,2,待机模式选择位,0,:,正常模式,1,:待机模式,1,READ_START,1,A/D,转换读启动选择位,0,:禁止,Start-by-read,1,:允许,Start-by-read,0,ENABLE_START,0,A/D,转换器启动,0,:,A/D,转换器不工作,1,:,A/D,转换器开始工作,0,表,6-28 ADCDAT0,描述,ADCDAT0,Bit,描,述,初,始,值,UPDOWN,15,等待中断模式,,Stylus,电平选择,0,:低电平,1,:高电平,AUTO_PST,14,自动按照先后顺序转换,X,,,Y,坐标,0,:正常,A/D,转换顺序,1,:按照先后顺序转换,XY_PST,13:12,自定义,X,,,Y,位置,00,:无操作模式,01,:测量,X,位置,10,:测量,Y,位置,11,:等待中断模式,Reserved,11:10,保留,XPDATA,9:0,X,坐标转换数据值(包括正常的,ADC,转换数值),6.8.5,实验设计,1,分压电路设计,2,软件程序设计,图,6-24,分压电路,6.8.6,实验操作步骤,1,准备实验环境,2,串口接收设置,3,打开实验例程,4,观察实验结果,6.8.7,实验参考程序,6.9,Nand,Flash读写实验,(,1,)通过实验掌握,Nand,Flash,的操作方法。,(,2,)通过实验掌握,S3C2410X,处理器的,Nand,控制器的使用。,6.9.1,实验目的,6.9.2,实验设备,(,1,)硬件:,Embest,EduKit,-,实验平台、,ULINK2,仿真器、,PC,机。,(,2,)软件:,RealView,IDE,、,Windows 98/2000/NT/XP,。,6.9.3,实验内容,编写程序对实验板上的,K9F1208,进行擦除、读、写访问。写入,K9F1208,某一地址,再从该地址读出,输出到超级终端。,6.9.4,实验原理,1,结构分析,2,读操作过程,表,6-29,I/O 0,I/O 1,I/O 2,I/O 3,I/O 4,I/O 5,I/O 6,I/O 7,1st Cycle,A,0,A,1,A,2,A,3,A,4,A,5,A,6,A,7,2nd Cycle,A,9,A,10,A,11,A,12,A,13,A,14,A,15,A,16,3rd Cycle,A,17,A,18,A,19,A,20,A,21,A,22,A,23,A,24,4th Cycle,A,25,*,L,*,L,*,L,*,L,*,L,*,L,*,L,图,6-25 K9F1208,读操作流程图,3擦除操作过程,图,6-26 K9F1208,擦除操作流程图,图,6-27 K9F1208,写操作流程图,4写操作过程,5S3C2410中Nand,Flash控制器,表,6-30 NFCONF,描述,NFCONF,位,描,述,初,始,值,Enable/Disable,15,Nand Flash,使能位,0,0,:关闭控制器,1,:使用控制器,Reserved,14:13,保留,Initialize ECC,12,初始化,ECC,0,0,:不使用,ECC,1,:使用,ECC,Nand,Flash Memory,11,内存片选使能,0,chip enable,TACLS,10:8,CLE,和,ALE,持续时间设置(,0,7,),0,持续时间,=HCLK(,设定值,+1),Reserved,7,保留,TWRPH0,6:4,TWRPH0,持续时间设置(,0,7,),0,持续时间,=HCLK(,设定值,+1),Reserved,3,保留,TWRPH1,2:0,TWRPH1,持续时间设置(,0,7,),0,持续时间,=HCLK(,设定值,+1),表,6-31 NFCMD,描述,NFCMD,位,描 述,初 始 值,Reserved,15:8,保留,Command,7:0,命令寄存器,0x00,表,6-32 NFADDR,描述,NFADDR,位,描 述,初 始 值,Reserved,15:8,保留,NFADDR,7:0,地址寄存器,表,6-33 NFDATA,描述,NFDATA,位,描 述,初 始 值,Reserved,15:8,保留,Data,7:0,数据寄存器,表,6-34 NFSTAT,描述,NFSTAT,位,描 述,初 始 值,Reserved,16:1,保留,RnB,0,Nand,Flash,忙判断位,0=,忙,1=,准备好,6.9.5,实验设计,6.9.6,实验操作步骤,1准备实验环境,2串口接收设置,3打开实验例程,6.9.7,实验参考程序,1主测试程序,2K9F1208初始化函数,3K9F1208页面读函数,4K9F1208页面写函数,5K9F1208块擦除函数,本 章 小 结,本章为读者提供了基于,S3C2410,平台各个典型接口的实验。本章是本书的一个重点章节,希望读者通过阅读和实践能够加深对嵌入式编程及,S3C2410,接口的理解。,
展开阅读全文