- 嵌入式系统实习报告 推荐度:
- 相关推荐
嵌入式实习报告四篇
随着社会一步步向前发展,我们使用报告的情况越来越多,报告根据用途的不同也有着不同的类型。我们应当如何写报告呢?下面是小编帮大家整理的嵌入式实习报告6篇,希望对大家有所帮助。
嵌入式实习报告 篇1
ARM嵌入式系统综合设计
一、实习时间和地点安排
1、实习时间:20xx年12月03 日 —— 20xx年12月14日,共两周的时间。
2、每天的实习时间安排:
上午:8:30——11:30
下午:13:30——15:30
3、实习地点:校内。
二、实习目的
1、掌握电子元器件的焊接原理和方法。
2、掌握ARM7 LPC2132控制程序的编写方法。
3、掌握调试软件和硬件的方法。
三、实习内容与要求
1、根据设计要求焊接好电路板并测试焊接无误。
2、绘制流程图并编写程序。
3、编译通过后,将程序下载到LPC2132进行调试。
4、调试成功后编写实习报告。
四、LPC2132芯片介绍
LPC2132最小系统图及其介绍
概述
LPC2132是基于一个支持实时仿真和嵌入式跟踪的32/16 位 ARM7TDMI-STM CPU 的微控制器,并带有 32kB、64kB、512 kB 的嵌入的高速
Flash 存储器。128 位宽度的存储器接口和独特的加速结构使 32 位代码能够
在最大时钟速率下运行。对代码规模有严格控制的应用可使用 16 位 Thumb?
模式将代码规模降低超过 30%,而性能的损失却很小。
较小的封装和极低的功耗使 LPC2131/2132/2138 可理想地用于小型系统中,如访问控制和 POS 机。宽范围的串行通信接口和片内 8/16/32kB 的 SRAM 使 LPC2131/2132/2138 非常适用于通信网关、协议转换器、软 modem 、声音
辨别和低端成像,为它们提供巨大的缓冲区空间和强大的处理功能。多个 32 位定时器、1 个或 2 个 10 位 8 路 ADC 、10 位 DAC 、PWM 通道和 47 个 GPIO 以及多达9 个边沿或电平触发的外部中断使它们特别适用于工业控制和医疗系统。
特性
1、小型 LQFP64 封装的 16/32 位 ARM7TDMI-S 微控制器。
2、8/16/32kB 片内静态 RAM 。
3、片内 Boot 装载软件实现在系统/在应用中编程(ISP/IAP )。扇区擦除
或整片擦除的时间为400ms ,1ms 可编程 256 字节。
4、EmbeddedICE?RT 和嵌入式跟踪接口可实时调试(利用片内 RealMonitor
软件)和高速跟踪执行代码。
5、1 个(LPC2132/2132 )或2 个(LPC2138 )8 路 10 位 A/D 转换器共包含 16 个模拟输入,每个通道的转换时间低至 2.44us 。
6、1 个 10 位 D/A 转换器,可提供不同的模拟输出(LPC2132/2138 )。
7、 2 个 32 位定时器/计数器(带 4 路捕获和 4 路比较通道)、PWM 单元(6 路输出)和看门狗。
8、实时时钟具有独立的电源和时钟源,在节电模式下极大地降低了功耗。
9、多个串行接口,包括 2 个 16C550 工业标准 UART 、2 个高速 I2C 接口(400 kbit/s )、SPITM 和 SSP(具有缓冲功能,数据长度可变)。
10、向量中断控制器。可配置优先级和向量地址。
11、多达 47 个 5V 的通用I/O 口(LQFP64 封装)。
12、 9 个边沿或电平触发的外部中断引脚。
13、 通过片内 PLL 可实现最大为 60MHz 的 CPU 操作频率,PLL 的稳定时间为 100us。
14、片内晶振频率范围:1~30 MHz。
15、2 个低功耗模式:空闲和掉电。
16、可通过个别使能/禁止外部功能和降低外部时钟来优化功耗。
17、通过外部中断将处理器从掉电模式中唤醒。
18、单个电源供电,含有上电复位(POR )和掉电检测(BOD )电路:-CPU
操作电压范围:3.0~3.6 V (3.3 V+/ - 10%) ,I/O 口可承受5V 的最大电压。
结构概述
LPC2132包含一个支持仿真的' ARM7TDMI-S CPU 、与片内存储器控制器接口
的 ARM7 局部总线、与中断控制器接口的 AMBA 高性能总线 (AHB )和连接片内外设功能的 VLSI 外设总线 (VPB ,ARM AMBA 总线的兼容超集)。
LPC2131/2132/2138 将 ARM7TDMI-S 配置为小端(little-endian )字节顺序。 AHB 外设分配了 2M 字节的地址范围,它位于 4G 字节 ARM 存储器空间的最顶端。每个 AHB 外设都 分配了 16k 字节的地址空间。LPC2131/2132/2138 的外设功能 (中断控制器除外)都连接到 VPB 总线。AHB 到 VPB 的桥将 VPB 总线与 AHB 总线相连。VPB 外设也分配了 2M 字节的地址范围,从 3.5GB 地址点开始。每个 VPB 外设在 VPB 地址空间内都分配了 16k 字节地址空间。
片内外设与器件管脚的连接由管脚连接模块控制。该模块必须由软件进行控制以符合外设功能与管脚在特定应用中的需求。
ARM7TDMI-S 处理器
ARM7TDMI-S 是通用的 32 位微处理器,它具有高性能和低功耗的特性。ARM 结构是基于精简指令集 计算机(RISC)原理而设计的。指令集和相关的译码机制比复杂指令集计算机要简单得多。这样使用一个小的、廉价的处理器核就可实现很高的指令吞吐量和实时的中断响应。
由于使用了流水线技术,处理和存储系统的所有部分都可连续工作。通常在执行一条指令的同时对下 ,一条指令进行译码,并将第三条指令从存储器中取出。
ARM7TDMI-S 处理器使用了一个被称为 THUMB 的独特结构化策略,它非常适用于那些对存储器有限制或者需要较高代码密度的大批量产品的应用。
在 THUMB 后面一个关键的概念是“超精简指令集”。基本上,ARM7TDMI-S 处理器具有两个指令集:标准 32 位 ARM 指令集 、16 位 THUMB 指令集
THUMB 指令集的 16 位指令长度使其可以达到标准 ARM 代码两倍的密度,却仍然保持 ARM 的大多 数性能上的优势,这些优势是使用 16 位寄存器的 16 位处理器所不具备的。因为 THUMB 代码和 ARM 代码一样,在相同的 32 位寄存器上进行操作。THUMB 代码仅为 ARM 代码规模的 65%,但其性能却相当于连接到 16 位存储器系统的相同 ARM 处理器性能的 160%。
片内 FLASH 程序存储器
LPC2131/2132/2138 分别含有 32kB、64kB 和 512kB 的FLASH 存储器系统。该存储器可用作代码和数据的存储。对 FLASH 存储器的编程可通过几种方法来实现:通过内置的串行 JTAG 接口,通过在系统编程(ISP )和 UART0 ,或通过在应用编程(IAP )。使用在应用编程的应用程序也可以在应用程序运行时对FLAH 进行擦除和/ 或编程,这样就为数据存储和现场固件的升级都带来了极大的灵活性。如果LPC2131/2132/2138 使用了片内引导装载程序(bootloader ),32/64/512kB 的 Flash 存储器就可用来存放用户代码。 LPC2131/2132/2138 的Flash 存储器至少可擦除/编程 10,000 次,保存数据的时间长达 10 年。 片内静态 RAM
片内静态 RAM (SRAM )可用作代码和/ 或数据的存储,支持 8位、16 位和32 位的访问。LPC2131/2132/2138 含有 8/16/32kB 的静态RAM 。 LPC2131/2132/2138 SRAM 是一个字节寻址的存储器。对存储器进行字和半字访问时将忽略地址对准,访问被寻址的自然对准值(因此,对存储器进行字访问时将忽略地址位 0 和 1,半字访问时将忽略地址位 0 )。因此,有效的读写操作要求半字数据访问的地址线0 为 0(地址以0、2 、4 、6、8、A 、C 和 E 结尾),字 数据访问的地址线 0 和 1 都为 0 (地址以0、4 、8 和 C 结尾)。该原则同样用于片外和片内存储器。SRAM 控制器包含一个回写缓冲区,它用于防止 CPU 在连续的写操作时停止运行。回写缓冲区总是保存着软件发送到 SRAM
的最后一个字节。该数据只有在软件请求下一次写操作时才写入 SRAM (数据只有 在软件执行另外一次写操作时被写入 SRAM)。如果发生芯片复位,实际的SRAM 内容将不会反映最近一 次的写请求(即:在一次“热”芯片复位后,SRAM 不会反映最后一次写入的内容)。任何在复位后检查 SRAM 内容的程序都必须注意这一点。通过对一个单元执行两次相同的写操作可保证复位后数据的写入。或者,也可通过在进入空闲或掉电模式前执行虚写(dummy write )操作来保证最后的数据在复位后被真正写入到 SRAM。
LPC2132管脚分布
五、硬件原理图
其中K1-K6为六个按键,分别对应清零键、减号键、第二个数字键、等号键、加号键和第一个数字键,接到I/O口的P0.08-P0.13脚。P0.00-P0.07号脚接段码,分别是G、F、E、D、C、B、A、DP。三个数码管的位选通端接到P0.28-P0.30三个管脚上,用于选通数码管。
ULN2803应用电路介绍
ULN20xx、ULN2800是高压大电流达林顿晶体管阵列系列产品,具有电流增益高、工作电压高、温度范围宽、带负载能力强等特点,适应于各类要求高速大功率驱动的系统。ULN20xxA电路是美国Texas Instruments公司和Sprague公司开发的高压大电流达林顿晶体管阵列电路,文中介绍了它的电路构成、特征参数及典型应用。
功率电子电路大多要求具有大电流输出能力,以便于驱动各种类型的负载。功率驱动电路是功率电子设备输出电路的一个重要组成部分。在大型仪器仪表系统中,经常要用到伺服电机、步进电机、各种电磁阀、泵等驱动电压高且功率较大的器件。ULN20xx、ULN2800高压大电流达林顿晶体管阵列系列产品就属于这类可控大功率器件,由于这类器件功能强、应用范围语广。因此,许多公司都生产高压大电流达林顿晶体管阵列产品,从而形成了各种系列产品,ULN20xx、ULN2800系列就是美国Texas Instruments公司、美国Sprague公司开发的高压大电流达林顿晶体管阵列产品。它们的系列型号分类如表1所列,生产20xx、2800高压大电流达林顿晶体管阵列系列产品的公司与型号对照表如表2所列。在上述系列产品中,ULN20xx系列能够同时驱动7组高压大电流负载,ULN2800系列则能够同时驱动8组高压大电流负载。美国Texas Instruments公司、美国Sprague公司生产的ULN20xxA由7组达林顿晶体管阵列和相应的电阻网络以及钳位二极管网络构成,具有同时驱动7组负载的能力,为单片双极型大功率高速集成电路。以下介绍该电路的构成、性能特征、电参数以及典型应用。20xx、2800高压大电流达林顿晶体管阵列系列中的其它产品的性能特性与应用可参考ULN20xxA。本设计的驱动电路如图所示:
在本实习中的应用
嵌入式实习报告 篇2
通过嵌入式控制系统的实习,使我们了解并掌握根据嵌入式控制系统项目要求,如何设计符合控制逻辑的原理图,复合原理图及电子电气EMC的PCB图,学习电子元器件的`焊接,PCB板的调试等,最终掌握嵌入式控制系统的设计及工艺等。
一、设计实习任务
1. 焊接ARM7(LPC2132)最小系统PCB。要求仔细认真焊接,并调试使其能正常工作(提供最简易测试程序)。
2. 设计数码管动态扫描显示电路,三个按键的键盘电路,模拟电压取样电路等。要求原理图设计合理,要求有与最小系统板的接口,正确焊接,调试后能正常工作。
3. 控制软件设计
在嵌入式控制系统的设计中,系统控制软件的设计是一项非常重要且艰巨的工作,系统能否正常可靠的工作,成败在此一举。因此要求同学们认真仔细的设计、调试控制软件。要求软件语句精炼,整体健壮,有一定的抗干扰能力。
二、数码管动态扫描显示电路控制软件设计
要求显示电路能正常显示数据,数码管无闪烁,明亮,可随时刷新显示的数据,参考流程图见图1。
图 1
三.键盘识别软件设计
嵌入式控制系统一般的是配备简易键盘,即根据需要设3~4按键基本能满足使用要求,因此键盘控制软件也是必须的,参考下图
四、ADC控制软件设计
五、 电路与程序
六、程序源代码
#include "LPC2294.h" 图 3
typedef unsigned int U32; //无符号32位整型变量
typedef unsigned char U8; //无符号8位整型变量
//typedef signed char int8; //有符号8位整型变量
typedef unsigned short U16; //有符号8位整型变量
#define Fpclk 11059200
#define DIS_1 0x06 //个位选通
#define DIS_2 0x05 //十位选通
#define DIS_3 0x03 //百位选通
#define KEY1 0x04 //+
#define KEY2 0x02 //-
#define KEY3 0x01 //ok
U16 cunt;
U16 data_dis,data_set;
U8 dis3=10,dis2=10,dis1=10;
U8 flag_dis,dis_n;
U8 timeout;
const U8 led_seg[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0xff,0x00}; //段吗: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 all_l 关显 void __irq Timer0_ISR(void);
void cpu_init(void)
{
PINSEL0 = 0x00;
IO0DIR = 0x3FF; //显示分配在P000~P010 ,段码P000~P007,位码P008~P010 //健P016~P018
//定时器0
T0TC = 0;
T0PR = 0;
T0MCR = 0x03;
T0MR0 = Fpclk/1000; //定时1mS
T0TCR = 0x01;
VICIntSelect = VICIntSelect&(~(1<<4));
VICVectCntl0 = 0x20|4;
VICVectAddr0 = (U32)Timer0_ISR;
VICIntEnable = (1<<4);
}
void updata(void)
{
U16 temp;
// u8 temp1,temp2,temp3;
//WDT_CONTR=0x3c;
if(data_dis<=999)
{
dis3=temp/100; //百位
temp=temp%100;
dis2=temp/10; //十位
dis1=temp%10; //个位 }
}
//====================================== // Timer0_ISR
//====================================== void __irq Timer0_ISR(void)
{
cunt++; if(cunt%10==0) flag_dis=1; if(timeout > 0) timeout--;
}
//====================================== //display共阳极动态扫描显示
//====================================== display()
{
//WDT_CONTR=0x3c;
dis_n++;
switch(dis_n)
{
case 1:
IO0PIN=led_seg[dis1] | DIS_1<<8; //显示个位 break;
case 2:
IO0PIN=led_seg[dis2] | DIS_2<<8; //显示十位 break;
case 3:
IO0PIN=led_seg[dis2] | DIS_3<<8; //显示百位 break;
}
if(dis_n>=3)
dis_n=0;
}
//=========================
// key_do
//按键接于P0.16~18
//=========================
void key_do(void)
{
U8 key,key_d;
嵌入式实习报告 篇3
实践报告学习嵌入式是我的梦想,我很羡慕能够在嵌入式方面独档一面的高手,希望有一天我也能像他们那样自信自如的在嵌入式这片热土上挥洒着自己的青春和浪漫。带着无比豪迈的心情和缤纷的梦想来到易嵌学习嵌入式,在新的老师、新的同学和新的环境中,我开始了我的嵌入式学习,开始了新一轮的拼搏。
在易嵌短暂的两个月,我们从linux基础入手,强化了c语言编程,学习了linux系统编程和网络编程。时间虽短,但成长很快,无论是理论知识还是实践能力都得到了大幅度的提高。在这里将理论和实践相结合,相互促进,相互补充,使得学习更加透彻。通过用不同方法实现同一个项目,不断深入,层层推进,学以致用!
在易嵌的这个暑假,我过得充实而快乐。在这里有着同学间的探讨、师生间的互动和魔鬼般的训练!在我丰富多彩的人生路上留下了永远亮丽与难忘的记忆!
实践报告正文:看着四年的大学生活就快要结束了,心中隐隐有一种伤感与失落,我陷入了沉思:该挺直腰杆走自己的路了!学习嵌入式是我的梦想,我很羡慕能够在嵌入式方面独档一面的高手,希望有一天我也能像他们那样自信自如的在嵌入式这片热土上挥洒着自己的青春和浪漫。
当我决定好好利用这个暑假,学习我一直都想去学的嵌入式的时候,就注定要在我丰富多彩的人生路上留下永远亮丽与难忘的记忆!算算毕业的时间,我已经闻到了离别的气息,在这即将远离大学时代的时刻,才真正懂得回眸的意义。想想走过的路,想想现在的路,想想来时的路,不知道未来能否成功,既然选择了远方,就注定要风雨兼程!带着无比豪迈的心情和缤纷的梦想来到易嵌学习嵌入式,希望在这崭新的一页留下人生的美好!在新的老师、新的同学和新的环境中,我开始了我的嵌入式学习,开始了新一轮的拼搏。
无论现在多么努力都无法追回失去的金色年华,所以在开班典礼的时候,我便为自己制定了目标!我将好好利用最后一个暑假,多学些知识锻炼自己,为自己储备一些精神食粮并不断开拓视野和提升自己的能力,让自己能够在毕业的时候成为学校的骄傲!
在易嵌短暂的两个月,我们从linux基础入手,强化了c语言编程,学习了linux系统编程和网络编程。时间虽短,但成长很快,无论是理论知识还是实践能力都得到了大幅度的提高。
通过对linux操作系统的学习,我初步掌握了linux基础。刚开始我对linux只是有一点儿了解,但并没有真正的去接触。在这段时间里,从linux系统安装开始着手,了解linux的发展,相比其他系统,它有很多优点。在安装好系统后,学习了linux的分区命名、linux的常用命令、文本编辑器vi、shell的使用、源代码的.编译和调试、多模块的编译和链接以及管理工具。通过这些学习,我基本能够在linux系统下通过vi编辑器编写c语言程序,通过一些常用命令来调试、查看程序。
能够在这么短的时间内初步掌握linux,与在学校学习一门课程意义完全不同,通过老师的讲解,自己的练习,同学之间的交流,能够加深印象,熟练操作。
学习linux基础只是我嵌入式学习历程的一个开始,虽然有好多命令还不太熟悉,有好多命令都还没有去尝试过,但我相信随着后期的学习,我将逐渐熟练掌握。在c语言学习阶段,我学到了很多新的知识,变量、函数、数组、指针、指针函数、函数指针、指针数组、数组指针、结构体、结构体指针数组、关键字……,从模块到整体,从写代码的风格到代码优化……,通过这段时间的学习,我感觉自己写出的代码比以前更直观,更注重细节,bug也更少了!
在半个月时间的c语言学习中,我从刚开始的重温c语言到后来的位运算、堆栈、单向链表、双向链表以及list_head。新知识以及注意点渐渐增多,在这段时间,我创造了很多个记录,比如11小时完成30道编程题,独自完成一个功能比较齐全的学生选课管理系统等,特别是刚接触到链表和list_head的时候,不在像前面那样轻松了,还记得那段时间,每到晚上热醒的时候,又想起了我的学生管理系统,本来就少的可怜的睡觉时间,又被……,真可谓苦我心志矣!
不过,等我美美的睡上一觉,醒来回想起这段时间的学习,真是一个大丰收!虽然不能说是很精通c语言,至少可以说真的入门了……,我又向自己的目标迈出了坚实的一步!这段时间,我时常会想,如果一切可以重来,我会选择另外一种学习方式,从一开始就夯实基础!可是这是不现实的,经历了无数次的风雨后,柔弱的我早已学会了坚强。通过不断的交流与学习,我懂得了生活,懂得了学习,懂得了时间,懂得了成长,懂得了奋斗和拼搏。现在知道,为时不晚,从现在开始,我将为自己开辟一条适合自己的道路。
伴随着烈日,我们又开始了新的征程,开始深入学习linux系统程序设计,在这个阶段,我们学习了操作系统基础、并发性、linux系统接口、进程和线程以及进程间的通信。通过这阶段的学习,我对linux有了更加深入的了解,能
够熟练进行多线程多进程的操作。
紧接着就进入了网络编程学习阶段,从网络基础到linux网络编程,我更加深入的学习了tcp/ip协议和osi模型,理解了数据报的传输过程,对网络在嵌入式方面的应用进行了深入的学习,学会了socket编程。学完后重新对学生选课管理系统进行了改写,用c/s模型改写成多用户登录,利用线程实现资源共享。在项目改写中,不仅融合了前面的c语言知识,还充分的应用了linux系统编程和socket编程,将理论和实践相结合,相互促进,相互补充,使得学习更加透彻。通过用不同方法实现同一个项目,不断深入,层层推进,学以致用!
在易嵌的这个暑假,我过得充实而快乐。在这里有着同学间的探讨、师生间的互动和魔鬼般的训练!军队通过扎实的训练培养出来一代代革命军人,相信不久的将来,我也会成为一名优秀的嵌入式工程师!
嵌入式实习报告 篇4
蓝牙技术概述
蓝牙(Bluetooth)是目前比较流行的一种短距离无线通讯技术,其主要目的就是要在全世界范围内建立一个短距离的无线通信标准。设计者的初衷是用隐形的连接线代替线缆。它取代目前多种电缆连接方案,通过统一的短程无线链路,在各信息设备之间可以穿过墙壁或公文包,实现方便快捷、灵活安全、低成本小功耗的话音和数据通信。 “蓝牙”技术的目的是使特定的移动电话、便携式电脑以及各种便携式通信设备的主机之间在近距离内实现无缝的`资源共享。
一、 实践目的
了解处理器的发展
掌握WinCE嵌入式系统开发方法和开发流程。
掌握WinCE嵌入式C#编程方法。
掌握WinCE嵌入式网络通信技术。
掌握Bluetooth编码技术
二、实践要求
1. 了解WinCE操作系统的裁剪及定制;
2. 设计蓝牙广播系统(包括服务器端和客户端);
3.设计蓝牙文件传输系统(包括服务器端和客户端);
4. 应用程序安装和部署。
三、实践内容
(1)了解Wince平台
了解处理器的发展,什么是嵌入系统,嵌入式系统的应用,以及窗体与控件的概念,掌握WinCE嵌入式C#编程方法,对实验平台有一定的认识,更进一步的认识蓝牙。了解编写应用程序的流程,理解了Windows 窗体,学会了使用基本控件如标签、文本、按钮、列表框和组合框,掌握窗体的常用属性和方法。
(2)蓝牙搜索、浏览与发送,蓝牙设备列表,配对设备清空,删除。
四、原理介绍
1.嵌入式系统:
嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。
一般由硬件设备、嵌入式操作系统、嵌入式应用软件组成。具有专用性、高效简洁性、高可靠和低能耗性、自身特殊性的特点。
【嵌入式实习报告】相关文章:
精选嵌入式系统实习报告三篇03-05
嵌入式开发学习心得04-27
UML 在嵌入式系统设计中的应用04-12
嵌入式实训心得体会12-13
嵌入式学习心得体会04-04
用GPRS modem实现嵌入式Internet接入系统04-12
实习报告物流实习报告总结09-23
嵌入式实训心得体会(精选15篇)06-06
企业实习的实习报告05-29