80 likes | 274 Views
项目三 用 ARM 实现彩灯控制系统. 1 、项目描述: 利用 s3c44b0x 的 IO 端口控制实验系统上 LED 1206 和 LED 1207 进行以下方式循环点亮: LED1206 亮 -> LED1206 关闭 -> LED1207 亮 ->LED1206 和 LED1207 全亮 -> LED1207 关闭 -> LED1206 关闭。. 2 、知识点
E N D
1、项目描述: 利用s3c44b0x的IO端口控制实验系统上LED 1206 和LED 1207 进行以下方式循环点亮:LED1206 亮 -> LED1206 关闭 -> LED1207 亮 ->LED1206 和LED1207 全亮 -> LED1207 关闭 -> LED1206 关闭。
2、知识点 S3C44B0X 芯片上共有71个多功能的输入输出管脚,它们分为7 组I/O 端口,其中两个9 位的输入/输出端口(端口E 和F);两个8 位的输入/输出端口(端口D 和G);一个16 位的输入/输出端口(端口C);一个10 位的输出端口(端口A);一个11 位的输出端口(端口B)。每组端口都可以通过软件配置寄存器来满足不同系统和设计的需要。在运行主程序之前,必须先对每一个用到的管脚的功能进行设置,如果某些管脚的复用功能没有使用,可以先将该管脚设置为I/O口。
1). S3C44B0X I/O 控制寄存器 • 端口控制寄存器(PCONA-G) 在S3C44B0X 芯片中,大部分管脚是多路复用的,所以在使用前要确定每个管脚的功能。对复用I/O 管脚功能的配置,可以通过配置寄存器PCONn(端口控制寄存器)来定义。如果PG0-PG7 作为掉电模式下的唤醒信号,则这些端口必须配置成中断模式。
端口数据寄存器(PDATA-G) 如果端口定义为输出口,则输出数据可以写入PDATn 中相应的位;如果端口定义为输入口,则输入的数据可以从PDATn 相应的位中读入。 端口上拉寄存器(PUPC-G) 通过配置端口上拉寄存器可以使该组端口和上拉电阻连接或断开。当寄存器中相应的位配置0 时,该管脚接上拉电阻;当寄存器中相应的位配置1 时,该管脚不接上拉电阻。 外部中断控制寄存器(EXTINT) 通过不同的信号方式可以使8 个外部中断被请求,EXTINT 寄存器可以根据外部中断的需要将中断触发信号配置为低电平触发、高电平触发、下降沿触发、上升沿触发和边沿触发几种方式。
3、任务分解 任务一 硬件电路设计
3、任务分解 任务二 软件控制程序设计 LCD.C 任务三 软硬件协同设计即系统实现
1) 打开EmbestIDE集成开发环境; 2) 执行File—New WorkSpace命令,新建一个工程led.ews; 3) 执行File—New命令,新建一个文本文件,编辑源程序并保存(程序清单见后; 4) 选中led.ews工程文件,右击执行Add Files To Project命令,将源程序文件添加到工程中; 5) 执行Project菜单下Settings命令,按照存储器实验中的配置方法对工程进行基本配置(配置Processer、Remote、Linker选项; 6)执行Build—Build Led.ews命令对整个工程进行编译; 7)编译通过后,按照存储器实验中的方法对该工程进行配置(Download选项; 8) 在工程管理窗口中双击led.c 就会打开该文件,在 “leds_off();”设置断点后,连接仿真器并下载程序后,点击Debug菜单Go 或F5 键运行程序; 9) 当程序停留到断点后,观察当前led 1206、led 1207 的状态,点击Debug 菜单下的Stepover 或F10 键执行程序,观察led 1206、led 1207 的变化