1、1 嵌入式系统课程设计报告 设计任务一 十字路口交通灯控制 一、设计目的:一、设计目的: 1 了解基于 ARM7 核的 LPC2106 的管脚功能和特点, 掌握 I/O 控制寄存器的设置方法; 2掌握 ARM7 应用系统编程开发方法,能用 C 语言编写应用程序; 3熟练掌握 ADS1.2 软件的使用以及 PROTEUS 仿真调试的方法; 二、具体任务:二、具体任务: 1采用 PROTEUS 完成十字路口交通灯控制的硬件电路设计,要求单片机选型为飞利 浦公司的 LPC2106,东西南北方向分别设置红黄绿 3 个指示灯,东西方向和南北方向各用 1 个数码管显示通行时间; 2用 ADS1.2 编写
2、C 语言应用程序,完成十字路口交通灯控制; 3采用 PROTEUS 将应用程序装载在 LPC2106 中,进行仿真验证。要求东西方向和南 北方向的数码管显示通行时间并倒计时,可以设置成一样,例如都是 9 秒倒计时;每当倒计 时时间到,完成红黄绿指示灯的状态切换,模拟实现十字路口的交通灯管理控制。 三、硬件电路设计。三、硬件电路设计。(参考下图完成硬件电路设计,用屏幕抓图的方式将自己设计 的 PROTEUS 电路图粘贴在下面,并用文字对所设计的电路功能、原理进一步说明) 附图: 2 硬件电路说明:硬件电路说明: 硬件硬件说明说明: 飞利浦公司的 LPC2106,双位共阴数码管,交通等模型。 管脚
3、说明:管脚说明:P0.0P0.6 接数码管的段选 ag;P0.7、P0.8 接数码管的位选 1、2;P0.10P0.12 接交通灯,分别对应南北方向的红、黄、绿和东西方向的绿、黄、红 四、源程序。四、源程序。(只将 C 语言应用程序附在后面,其它项目文档不要提供,C 语言应用程 序要有一定的注释说明) 源程序: #include“config.h“ #include“LPC2106.h“ int8 j=0; /定义全局变量 j uint8 led=0x3f,0x06,0x5b,0x4f,0x66, 0x6d,0x7d,0x07,0x7f,0x6f; /数码管段选值 /* 延迟子函数 */ vo
4、id delay(int t) int i; for(i=0;i0;i=i-2) /持续时间设置 l=i/10000; display(l); j+; if(j=2) /南北方向绿灯,东西方向红灯 int i,l; for(i=300000;i0;i=i-2) /持续时间设置 l=i/10000; display(l); j+; if(j=3) /东西南北都为黄灯 int i,l; for(i=60000;i0;i=i-2) /持续时间设置 l=i/10000; display(l); j=0; 五、仿真效果。五、仿真效果。(用屏幕抓图的方式将 PROTEUS 运行仿真效果图粘贴在下面) 5
5、设计任务二 uC/OS-的移植与应用 6 一、设计目的:一、设计目的: 1了解嵌入式实时操作系统uC/OS-可移植、可裁剪等性能特点,正确理解实时操作 系统中任务、信号、消息、中断等基本概念以及uC/OS-多任务管理的调度算法; 2掌握uC/OS-在 ARM7 上移植的方法; 3能将uC/OS-移植在 LPC2106 中,并根据具体要求创建用户任务,解决实际问题; 二、具体任务:二、具体任务: 1uC/OS-移植在 LPC2106 中。 2编写用户任务程序,完成实时温度的采集控制。硬件电路见参考硬件电路图,图中 用滑动变阻器代替温度传感器转换后的电压,用 ADC0809 完成 A/D 转换,并用数码管显示 出来。 三、三、参考参考硬件电路。硬件电路。(用文字对所设计的电路功能、原理做详细说明) 附图: 硬件电路说明:硬件电路说明: 硬件电路:硬件电路: 飞利浦公司的 LPC2106、 ADC0808 模数转换芯片、 四位共阴数码管、 按键、 74LS04 反向器、模拟温度传感器的滑动变阻器。 7 管脚说明管脚说明:LPC2106 低 16 位作输出端:P0.0P0.6 接数码管段选 ag;P0.8P0.10 接数码管 位选 24;P0.11 接 adc0808 的转换启动端 start,P0.12 接 adc0808 的输出使能端 oe; LPC2106 高 16 位作输