嵌入式系统调研报告

2024-04-07

嵌入式系统调研报告(共6篇)

篇1:嵌入式系统调研报告

嵌入式系统设计实验报告

班 级:学 号:姓 名:成 绩:指导教师:

20090612 2009112107 侯金钟 武俊鹏、刘书勇 1.实验一

1.1 实验名称

嵌入式系统硬件开发环境

1.2 实验目的

1.熟悉UP-net3000实验平台。

2.超级终端设置及BIOS 功能使用。

1.3 实验环境

硬件:ARM 嵌入式开发平台、用于ARM7TDMI 的JTAG 仿真器、PC 机Pentium100 以 上、串口线。

软件:PC 机操作系统win98、Win2000 或WinXP、ARM SDT 2.51 或ADS1.2 集成开发 环境、仿真器驱动程序、超级终端通讯程序。

1.4 实验内容及要求

熟悉UP-net3000实验平台的硬件电路和外设,ARM JTAG的安装和使用,利用超级终端检验外设的工作状态。

1.5 实验设计与实验步骤

1.建立工程

(1)运行ARM SDT 2.5 集成开发环境(ARM Project Manager).(2)在新建的工程中,如图1A-2 所示,选中工程树的“根部”。

(3)因为开发板上的嵌入式处理器ARM7TDMI 没有浮点处理器,所以,如图1A-3 所

示,在弹出的对话框中设置Floating Point Processor 为none,并保持其他的设置不变。(4)选中工程树的“根部”,通过菜单Project | Tool Configuration for work1.apj | asmlink | Set,对整个工程的连接方式进行设置。(5)在弹出的对话框中,选中Entry and Base 标签,如图1A-4 所示,设置连接的Read-Only(只读)和Read-Write(读写)地址。

(6)选择Linker Configuration 的ImageLayout 标签,(7)选择Project | Edit Project Tamplete 菜单,弹出Project Template Editor 对话框。

(8)选择Project | Edit Variables for work1.apj,弹出Edit Variables for work1.apj 对话框。

2.进行程序的在线仿真、调试

1.6 实验过程与分析

熟悉UP-net3000实验平台的硬件电路和外设,安装了ARM JTAG,利用超级终端检验了外设的工作状态。

1.7 实验结果总结

软件安装成功,结果显示正常。

1.8 心得体会

通过此次试验,我对ARM的环境的功能有一定的了解与完善。对试验台有了基本的认识与使用。

2.实验二

2.1 实验名称

嵌入式系统软件开发环境

2.2 实验目的

1.熟悉ADS1.2 开发环境,学会ARM 仿真器的使用。

2.使用ADS 编译、下载、调试并跟踪一段已有的程序,了解嵌入式开发的基本思想和过程。

2.3 实验环境

硬件:ARM 嵌入式开发平台、用于ARM7TDMI 的JTAG 仿真器、PC 机Pentium100 以 上、串口线。

软件:PC 机操作系统win98、Win2000 或WinXP、ARM SDT 2.51 或ADS1.2 集成开发 环境、仿真器驱动程序、超级终端通讯程序。

2.4 实验内容及要求

本次实验使用ADS 集成开发环境。新建一个简单的工程文件,并编译这个工程文件。学习ARM 仿真器的使用和开发环境的设置。下载已经编译好的文件到嵌入式控制器中运行。学会在程序中设置断点,观察系统内存和变量。

2.5 实验设计与实验步骤

(1)运行ADS1.2 集成开发环境(CodeWarrior for ARM Developer Suite)。

(2)在新建的工程中,选择Debug 版本,使用Edit | Debug Settings菜单对Debug 版本进行参数设置。(3)在Debug Settings 对话框中选择Target Settings 项。在Post-linker一栏中选择ARM from ELF。

(4)在Debug Settings 对话框中选择ARM Linker 项

(5)在第四步中如果选择简单的地址连接设置,在Debug Settings 对话框中选择ARM Linker 项

(6)回到的工程窗口中,选择Release 版本,使用Edit | Release Settings 菜单对Release 版本进行参数设置。(7)参照第(3)、(4)、(5)、(6)步在Release Settings 对话框中设置Release版本的Post-linker、连接地址范围、入口模块和输出文件。(8)回到如图1B-3 所示的工程窗口中,选择Targets 选项卡,如图1B-11 所示。选中DebugRel 版本,按Del 键将其删除。DebugRel 子树是一个折衷版本,通常用不到,所以在这里删除。

2.6 实验过程与分析

1)回到工程窗口选中Debug 版本,执行菜单Project | Make 对工程进行编译连接。(2)在ADS 中执行菜单Project | Debug 启动ADS1.2 的调试工具AXD。(3)在AXD 中执行菜单Options | Configure Target 对AXD 进行设置。(4)点Select 按钮选择远程连接为ARM ethernet driver,点Configure 按钮输入仿真器的IP 地址。

(5)等待程序装载完毕以后,通过Execute | Go 菜单以及Execute | Stop(或者工具栏中的相应按钮)运行或暂停程序。程序暂停后在窗口中将显示出程序暂停的位置。(6)通过Execute | Step 菜单(或者工具栏中的相应按钮)可以单步运行程序。

(7)程序停止后可以通过Processor Views | Sources 菜单查看源文件,并可在适当位置按F9 设置端点。

(8)使用在Processor View 菜单下的Registers、Variables 和Memory 命令可以查看工作寄存器或者内存变量。读者可以逐一地尝试,为以后调试程序打下基础。

2.7 实验结果总结

超级终端输出“Hello World!”。

2.8 心得体会

基本了解了ADS1.2的配置条件,学会了ARM仿真器的使用方法。

3.实验三

3.1 实验名称

键盘及LED实验

3.2 实验目的

1.学习键盘及LED 驱动原理。

2.掌握ZLG7289芯片串行接口的使用方法,用ZLG7289芯片驱动17键的键盘和8个共阴极LED。

3.3 实验环境

硬件:ARM 嵌入式开发平台、用于ARM7TDMI 的JTAG 仿真器、PC 机Pentium100 以 上、串口线。

软件:PC 机操作系统win98、Win2000 或WinXP、ARM SDT 2.51 或ADS1.2 集成开发 环境、仿真器驱动程序、超级终端通讯程序。

3.4 实验内容及要求

通过ZLG7289芯片驱动17键的键盘和8个共阴极LED,将按键值在LED上显示出来。要求从右至左循环显示至少四位数字。

基本功能实现之后可考虑实现从左至右显示四位及四位以上数字(最大八位),并可设置清零键等扩展功能。

3.5 实验设计与实验步骤

利用所给的基础代码进行调试,观察输出结果,结合指导书和教材掌握基本原理和源代码的编写方式。根据实验的要求设计函数流程,并反复调试,实现功能。1.新建工程,将“Exp3 键盘及LED 驱动实验”中的文件添加到工程。2.定义ZLG7289 寄存器(ZLG7289.h)

#define ZLG7289_CS(0x20)//GPB5 #define ZLG7289_KEY(0x10)//GPG4 #define ZLG7289_ENABLE()do{ZLG7289SIOBand=rSBRDR;ZLG7289SIOCtrl=rSIOCON;rSIOCON=0x31;rSBRDR=0xff;rPDATB&=(~ZLG7289_CS);}while(0)#define ZLG7289_DISABLE()do{rPDATB|=ZLG7289_CS;rSBRDR=ZLG7289SIOBand;rSIOCON=ZLG7289SIOCtrl;}while(0)3.编写ZLG7289 驱动函数(ZLG7289.c)4.定义键盘映射表:(Keyboard16.c)

unsigned char KeyBoard_Map[]= {4,8,11,0,0,0,0,0,5,9,12,15,1,0,0,0,6,10,13,16,2,3,0,0,7,0,14,0,0,0,0,0,0 ,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};//64 键值映射表,通过查找键盘映射表来确定键盘扫描码对应的按键值。

5.定义键值读取函数。(Keyboard16.c)6.编写主函数,将按键值在数码管上显示。

3.6 实验过程与分析

利用键盘驱动函数实现基本数字输入,然后利用循环左移函数实现输入数字做一样功能,并通过改变函数中相应delay的值来消除键盘按键带来的抖动。

3.7 实验结果总结

按键值可以在LED上显示出来。要求从右至左循环显示八位数字,同时可以复位清零。达到实验的效果。

3.8 心得体会

通过本次实验,我了解了LED的显示屏幕的数字的移位功能,这个功能不止可以用一个方法实现,而循环左移是其中比较巧妙且省力的一种,在遇到类似情况的时候,可以优先考虑能不能利用到文件中已经存在的函数,这样可以不必自己编写函数,省时省力。是一种可靠的方法。4.实验四

4.1 实验名称

电机转动控制及中断实验

4.2 实验目的

1.熟悉ARM本身自带的六路即三对PWM,掌握相应寄存器的配置。

2.编程实现ARM系统的PWM输出和I/O输出,前者用于控制直流电机,后者用于控制步进电机。

3.了解直流电机和步进电机的工作原理,学会用软件的方法实现步进电机的脉冲分配,即用软件的方法代替硬件的脉冲分配器。

4.了解44B0处理器上中断的应用。5.学习在44B0处理器上中断的应用。

6.进一步熟悉平台外围硬件及其驱动程序的编写。

4.3 实验环境

硬件:ARM 嵌入式开发平台、用于ARM7TDMI 的JTAG 仿真器、PC 机Pentium100 以 上、串口线。

软件:PC 机操作系统win98、Win2000 或WinXP、ARM SDT 2.51 或ADS1.2 集成开发 环境、仿真器驱动程序、超级终端通讯程序。

4.4 实验内容及要求

1.学习步进电机和直流电机的工作原理,了解实现两个电机转动对于系统的软件和硬件要求。学习ARM 知识,掌握 PWM 的生成方法,同时也要掌握 I/O的控制方法。

2.编程实现ARM芯片的一对PWM输出用于控制直流电机的转动,通过A/D旋钮控制其转动方式。

3.编程实现ARM的四路I/O通道,实现环形脉冲分配用于控制步进电机的转动,通过A/D旋钮控制步进电机的转角。

4.通过键盘控制直流电机与步进电机的切换。5.设置并启动定时器。

6.设置中断,编写定时器中断服务程序,对中断次数进行计数并在LED上显示结果。

4.5 实验设计与实验步骤

1.添加并打开工程。

2.进行直流电机初始化设置和代码编写。3.进行步进电机初始化设置和代码编写。

4.对Timer3编程,编写定时器中断服务程序,完成对中断次数的计数。5.编写LED计数显示函数,使LED能正确计数并显示0-9999。6.编写中断初始化函数和中断响应函数。7.终端下载测试。

4.6 实验过程与分析 1.对直流电机进行编程和测试,掌握转速和旋转方向的设定方法。

2.对步进电机进行编程和测试,掌握ARM的四路I/O通道,实现环形脉冲分配用于控制步进电机的转动,通过A/D旋钮控制步进电机的转角。

3.对主函数进行编程,用键盘响应直流电机与步进电机的切换控制。

4.掌握中断相关语句的应用,弄清定义的中断向量、中断向量号,编写中断响应函数,并完成中断响应控制。

4.7 实验结果总结

实现了直流电机与步进电机的基本设置和控制,可以通过键盘控制电机之间的切换。完成了中断的响应和定时中断。当对其中一个旋钮转动时,就可以由直流电机转换成步进电机的转换,达到实验的效果。

4.8 心得体会

通过本次实验,我了解了直流电机和步进电机的工作原理,同时也知晓了电机间的转换过程,了解其中的道理内涵,熟悉了ARM自带的A/D转换器的工作原理及编程方法,了解了中断的意义和实现方法,实现了简单了中断处理程序。同时我也收获了很多关于ARM处理机的相关知识。

5.实验五

5.1 实验名称

触摸屏驱动实验

5.2 实验目的

1.了解触摸屏的基本概念与原理。

2.理解触摸屏与LCD的关系。3.编程实现对触摸屏的控制。

4.熟悉用 ARM 内置的 LCD控制器驱动 LCD。

5.3 实验环境

硬件:ARM 嵌入式开发平台、用于ARM7TDMI 的JTAG 仿真器、PC 机Pentium100 以 上、串口线。

软件:PC 机操作系统win98、Win2000 或WinXP、ARM SDT 2.51 或ADS1.2 集成开发 环境、仿真器驱动程序、超级终端通讯程序。

5.4 实验内容及要求

1.了解触摸屏基本原理,理解对触摸屏进行输出标定、与LCD显示器配合的过程。2.通过编程实现触摸两点自动在两点间划直线。3.通过编程实现在触摸屏上动态画出曲线。5.5 实验设计与实验步骤

1.添加并打开工程。

2.在头文件中定义宏和常量及驱动函数。

#define ADS7843_CTRL_START 0x80 #define ADS7843_GET_X 0x50 #define ADS7843_GET_Y 0x10 #define ADS7843_CTRL_12MODE 0x0 #define ADS7843_CTRL_8MODE 0x8 #define ADS7843_CTRL_SER 0x4 #define ADS7843_CTRL_DFR 0x0 #define ADS7843_CTRL_DISPWD 0x3 // Disable power down #define ADS7843_CTRL_ENPWD 0x0 // enable power down #define ADS7843_PIN_CS(1<<6)//GPF6 #define ADS7843_PIN_PEN(1<<5)//GPG5 /////////触摸屏动作//////// #define TCHSCR_ACTION_NULL 0 #define TCHSCR_ACTION_CLICK 1 //触摸屏单击 #define TCHSCR_ACTION_DBCLICK 2 //触摸屏双击 #define TCHSCR_ACTION_DOWN 3 //触摸屏按下 #define TCHSCR_ACTION_UP 4 //触摸屏抬起 #define TCHSCR_ACTION_MOVE 5 //触摸屏移动

#define TCHSCR_IsPenNotDown()(rPDATG&ADS7843_PIN_PEN)(ADS7843_CTRL_START|ADS7843_GET_X|ADS7843_CTRL_12MODE |ADS7843_CTRL_DFR|ADS7843_CTRL_ENPWD)//采样x 轴电压值,数据为12 位,参考电压输入模式为差分模式,允许省电模式

#defineADS7843_CMD_Y(ADS7843_CTRL_START|ADS7843_GET_Y|ADS7843_CTRL_12MODE |ADS7843_CTRL_DFR|ADS7843_CTRL_ENPWD)int TchScr_Xmax=1840,TchScr_Xmin=176, TchScr_Ymax=195,TchScr_Ymin=1910;//触摸屏返回电压值范围 #defineADS7843_CMD_X 3.校准触摸屏坐标,进行坐标转换。

4.实现触屏取点并显示功能。

将触摸动作及触摸点坐标在超级终端上显示出来。5.实现两点间自动划线功能。6.实现触摸屏动态划线功能。

可以使用TchScr_GetScrXY()函数(第三个参数为0)来获得液晶屏的x、y 方向的电压

范围,分别点触摸屏有效面积的左上角和右下角,得到下列参数:

TchScr_Xmax=1840;TchScr_Xmin=176;TchScr_Ymax=195;TchScr_Ymin=1910;//此数值仅供参考,请以实际校对为准

5.6 实验过程与分析 1.在定义触屏响应功能的函数中对点击触屏进行响应函数的修改,在其中添加修改点颜色的函数,修改得到的触摸点的颜色,并显示在LCD上。

2.获取第一个点坐标并储存,获取第二个点坐标并储存,由编写的划线函数取得储存的两点间直线上所有点的坐标,并对其改变颜色,显示在LCD上,即完成划直线功能。

3.将划线函数应用到响应触屏移动消息的函数下,即可对连续获得的触摸坐标进行连续的画短直线,连接成曲线,完成动态划线功能。

5.7 实验结果总结

了解了触摸屏响应动作消息的函数的工作原理,通过修改实现了触摸屏响应不同动作进行画点、划线、动态划线的功能。验证触摸屏的灵敏度的实验。

5.8 心得体会

通过这次实验,我基本掌握了通过编程驱动触摸屏以及触摸屏响应时间,实现了触摸屏对不同动作消息的响应。同时也知晓了在触摸屏上的描点画线的实现,但是由于不知名的原因,描点画线的误差较大,位置偏差较大,同时触摸屏有时会不灵敏,出现时好时坏的现象,但是由于我们的辛勤钻研,最终克服了这个困难,实现了最后的触摸屏的实现。

6.实验六

6.1 实验名称

UCOS-Ⅱ在ARM微处理器上的裁剪

6.2 实验目的

1.了解UCOS-Ⅱ内核的主要结构。

2.掌握UCOS-Ⅱ裁剪的基本原理与嵌入式编程实现方法。3.学习如何根据具体情况对UCOS-Ⅱ操作系统进行裁剪。

4.通过对UCOS-Ⅱ配置文件(OS_CFG.H)中相关的配置常量进行设置,实现对UCOS-Ⅱ的裁剪。

6.3 实验环境

硬件:ARM 嵌入式开发平台、用于ARM7TDMI 的JTAG 仿真器、PC 机Pentium100 以 上、串口线。

软件:PC 机操作系统win98、Win2000 或WinXP、ARM SDT 2.51 或ADS1.2 集成开发 环境、仿真器驱动程序、超级终端通讯程序。

6.4 实验内容及要求

对UCOS-Ⅱ内核进行裁剪并移植到ARM7微处理器上。

6.5 实验设计与实验步骤 1.按照要求,载入STARTUP目录下文件,完成系统初始化、环境配置。2.载入UCOS-Ⅱ的全部源码,与处理器架构相关的文件位于arch目录下。3.在os_cpu.h中编写与处理器和编译器相关的代码。

4.编写os_cpu_c.c等6个与操作系统相关的函数。5.编写os_cpu.asm等4个与处理器相关的函数。

6.6 实验过程与分析

按照实验步骤进行,得到了需要的系统。

6.7 实验结果总结

按照要求进行了裁剪,得到了满足需要又紧凑的应用软件系统。

6.8 心得体会

通过本次实验,我了解了UCOS-Ⅱ内核的主要结构,掌握UCOS-Ⅱ裁剪的基本原理与嵌入式编程实现方法,学会了如何根据具体情况对UCOS-Ⅱ操作系统进行裁剪。

7.实验七

7.1 实验名称

UCOS-Ⅱ在ARM微处理器上的移植和编译

7.2 实验目的

1.了解UCOS-Ⅱ内核的主要结构。

2.掌握将UCOS-Ⅱ内核移植到ARM7处理器上的基本方法。

7.3 实验环境

硬件:ARM 嵌入式开发平台、用于ARM7TDMI 的JTAG 仿真器、PC 机Pentium100 以 上、串口线。

软件:PC 机操作系统win98、Win2000 或WinXP、ARM SDT 2.51 或ADS1.2 集成开发 环境、仿真器驱动程序、超级终端通讯程序。

7.4 实验内容及要求

1.将UCOS-Ⅱ内核进行移植到ARM7微处理器上。

2.编写两个简单任务,在超级终端上观察两个任务的切换。

7.5 实验设计与实验步骤

1.该实验的文件分为两类,其一是 STARTUP 目录下的系统初始化、配置等文件,其二是 UCOS-Ⅱ的全部源码,arch 目录下的 3 个文件是和处理器架构相关的。

2.设置 os_cpu.h 中与处理器和编译器相关的代码。

3.用 C 语言编写 6 个操作系统相关的函数(OS_CPU_C.C)。4.用汇编语言编写 4 个与处理器相关的函数(OS_CPU.ASM)。5.编写一个简单的多任务程序来测试一下移植是否成功。6.编译并下载移植后的 UCOS-Ⅱ。

7.6 实验过程与分析

1.按照实验步骤进行,将µC/OS-II 内核移植到了ARM7 微处理器上。2编写了两个简单任务,在超级终端上观察两个任务的切换。

7.7 实验结果总结

将µC/OS-II 内核顺利移植到了ARM7 微处理器上。

7.8 心得体会

通过本次实验,使我更加了解了µC/OS-II 内核的主要结构,掌握了ARM的C语言和汇编语言的编程方法,了解了ARM7处理器结构,掌握了将µC/OS-II 内核移植到ARM 7 处理器上的基本原理与嵌入式编程实现方法。

8.实验八

8.1 实验名称

综合实验

8.2 实验目的

对前七次实验进行总结,应用之前所学的知识,将前几次实验内容结合起来,完成键盘,LED,触摸屏,直流电机,步进电机各种功能的组合。实现一个较为全面的功能结构。

8.3 实验环境

硬件:ARM 嵌入式开发平台、用于ARM7TDMI 的JTAG 仿真器、PC 机Pentium100 以 上、串口线。

软件:PC 机操作系统win98、Win2000 或WinXP、ARM SDT 2.51 或ADS1.2 集成开发 环境、仿真器驱动程序、超级终端通讯程序。

8.4 实验内容及要求

对前七次实验进行总结,应用之前所学的知识,完成自拟的嵌入式系统,要求综合前期基础实验的各种功能。

8.5 实验设计与实验步骤

1.添加并打开工程。2.进行LCD设计,在LCD显示屏输出文本。

3.进行LED及键盘设计,完成LED输出显示功能和键盘输入功能。4.进行电机控制设计,完成键盘控制电机转动功能。5.进行中断设计,完成定时中断功能。

6.进行触摸屏设计,完成触摸屏感应和划线功能。7.进行裁剪和移植功能设计和完成。

8.6 实验过程与分析

1.完成LCD显示功能,在LCD显示屏上输出文本:“Hello World!”。2.进入界面触屏控制选择功能,实现触屏选择功能。

3.自定义四种种功能,第一为电机控制,从键盘读取命令,并将功能编号显示在LED上,LED显示的是计数的数据,同时旋转按钮完成电机转速的控制选择。

4.第三种功能为划线,功能编号显示在LED高四位上,同时LCD屏幕清屏,为划线功能做准备,可以实现划线功能。

5.第四种功能为定时中断,当由键盘控制时,LED显示数值清零,实现了中断。6.实现裁剪与移植功能。

8.7 实验结果总结

完成了各种基本功能,并通过自拟的系统将各种功能整合起来,完成了一个小的嵌入式系统,对前七次的功能有了更深入的了解。通过LED的计数,当在计数值在前30秒之内,由键盘控制LED的数值及显示,按键盘上的某一个按键,实现对LED上的数值清零,后30秒由触摸屏控制清零,并且在前30秒之内,旋转按钮,实现对直流电机的运转,并且到步进电机的转换。

8.8 心得体会

通过这次实验,我更加深刻地掌握了前几次实验中的基本功能的实现方法,并且把几种功能联合在一起,实现一些功能,把LED 显示屏,LCD触摸屏,键盘,直流电机,步进电机等等设备联合在一起,对该实验有一定的帮助与提高,而我和我的队友也对嵌入式系统有了更深入的了解,在此期间,也学习了关于ARM处理器的开发与实践,了解了关于手机的嵌入式设备的产生过程,我也深深的对此充满了兴趣,对未来的嵌入式课程设计奠定了深厚的基础,可是令我遗憾的是,我和队员的水平所限,没有完成中断优先级的控制。本来想完成更多的功能,可是最后由于时间紧迫,也有一些其他的事情来分神分心,所以就只能完成这些,但是在未来的几周内,嵌入式课程设计也给了我们很大的空间去做未完成的事情。我相信我们会做的更加完美,功能更强大,用于未来的生活中去实践。

篇2:嵌入式系统调研报告

班 级: 学 号: 姓 名: 成 绩: 指导教师:

1.实验一

1.1 实验名称

博创UP-3000实验台基本结构及使用方法

1.2 实验目的

1.学习嵌入式系统开发流程。

2.熟悉UP-net3000实验平台的核心硬件电路和外设。

3.增加对各个外设的了解,为今后各个接口实验打下基础。

1.3 实验环境

博创UP-NETARM3000 嵌入式开发平台

1.4 实验内容及要求

(1)嵌入式系统开发流程概述

(2)熟悉UP-net3000实验平台的核心硬件电路和外设(3)ARM JTAG的安装与使用

(4)通过操作系统自带的通讯软件超级终端,检验各个外设的工作状态(5)通过本次课程对各个外设的了解,为今后各个接口实验打下基础

1.5 实验设计与实验步骤

1.硬件安装 2.软件安装

(1)超级终端:

运行Windows 系统下的超级终端(HyperTerminal)应用程序,新建一个通信终端;在接下来的对话框中选择 ARM开发平台实际连接的PC机串口;完成新建超级终端的设置以后,可以选择超级终端文件菜单中的保存,将当前设置保存为一个特定超级终端到桌面上,以备后用。

(2)JTAG 驱动程序的安装:

执行armJtag目录下armJtagSetup.exe程序,选择安装目录,安装 JTAG 软件。

1.6 实验过程与分析

(1)了解嵌入式系统开发流程(2)对硬件的安装(3)对软件的安装

1.7 实验结果总结

通过本次实验对嵌入式系统开发流程进行了了解,并且对硬件环境和软件环境进行了安装配置,通过本次实验对以后的接口实验打了基础。

1.8 心得体会

通过本次实验对嵌入式实验有了初步的了解,对基本开发流程也有了初步的了解。

2.实验二

2.1 实验名称

ADS1.2软件开发环境使用方法

2.2 实验目的

熟悉ADS1.2开发环境,学会 ARM仿真器的使用。使用 ADS 编译、下载、调试并跟踪一段已有的程序,了解嵌入式开发的基本思想和过程。

2.3 实验环境

(1)ADS1.2开发环境

(2)博创UP-NETARM3000 嵌入式开发平台(3)PC(4)串口线

2.4 实验内容及要求

本次实验使用ADS 集成开发环境,新建一个简单的工程文件,并编译这个工程文件。学习ARM仿真器的使用和开发环境的设置。下载已经编译好的文件到嵌入式控制器中运行。学会在程序中设置断点,观察系统内存和变量,为调试应用程序打下基础。

2.5 实验设计与实验步骤

(1)运行ADS1.2开发环境(2)新建工程文件(3)编译工程文件

(4)下载编译好的文件到嵌入式控制器中运行

2.6 实验过程与分析

(1)实现Hello World!

最终在输出了Hello World(2)编程实现ARM 和计算机之间的串行通讯

实现了串口通信,用ARM监视串口,接收到的字符串由ARM通过串口发送给超级终端,最终在超级终端上显示了按下的键。学习了串行通讯原理,了解串行通讯控制器,阅读ARM 芯片文档,掌握ARM 的UART相关寄存器的功能,熟悉ARM 系统硬件的UART 相关接口。

2.7 实验结果总结

对ADS 1.2开发环境使用和AXD Debugger使用方法有了初步的了解,基本成功运行了编译好的工程文件。

2.8 心得体会

学习了ADS1.2开发环境的使用方法和调试方法。使用 ADS 编译、下载、调试并跟踪一段已有的程序,了解了嵌入式开发的基本思想和过程。

3.实验三

3.1 实验名称

键盘控制方法及LED驱动设计

3.2 实验目的

熟悉ZLG7289芯片的内部结构,掌握用ZLG7289驱动键盘和LED的方法,掌握ARM汇编语言和C语言的编程方法编写出一段程序,要求能在LED上显示出小键盘上按下的4位数字。

3.3 实验环境

(1)ADS1.2开发环境

(2)博创UP-NETARM3000 嵌入式开发平台(3)PC(4)串口线

3.4 实验内容及要求

通过ZLG7289芯片驱动17键的键盘和8个共阴极LED,将按键值在LED 上显示出来。

3.5 实验设计与实验步骤

(1)新建工程,将“Exp3键盘及LED 驱动实验”中的文件添加到工程。(2)定义ZLG7289 寄存器(3)编写ZLG7289 驱动函数(4)定义键盘映射表(5)定义键值读取函数

(6)编写主函数

3.6 实验过程与分析

(1)定义ZLG7289寄存器 #define ZLG7289_CS #define ZLG7289_KEY #define ZLG7289_ENABLE()do{ZLG7289SIOBand=rSBRDR;ZLG7289SIOCtrl=rSIOCON;rSIOCON=0x31;rSBRDR=0xff;rPDATB&=(~ZLG7289_CS);}while(0)#define ZLG7289_DISABLE()do{rPDATB|=ZLG7289_CS;rSBRDR=ZLG7289SIOBand;rSIOCON=ZLG7289SIOCtrl;}while(0)(2)主函数中需要在开始初始化zlg7289。编写驱动和键值映射之后,在一个循环里面从键盘中读取按键的号码,根据键值映射读出按键的值。然后在主函数中,将读出的按键值在数码管上显示出来。

(3)Main函数的主要功能部分,GetKey()函数得到按键值是调用zlg7289获取键盘事件和核心。

3.7 实验结果总结

通过实验最终LED灯上能显示数字,即实现了通过键值控制LED灯

3.8 心得体会

通过本次实验对ZLG7289芯片的内部结构有了更进一步的了解,对ZLG7289驱动键盘和LED的方法也更进一步的进行了学习。

4.实验四

4.1 实验名称

电机转动控制及中断实验

4.2 实验目的

(1)熟悉ARM本身自带的六路即三对PWM,掌握相应寄存器的配置

(2)编程实现 ARM系统的PWM 输出和I/O 输出,前者用于控制直流电机,后者用于控制步进电机。

(3)了解直流电机和步进电机的工作原理,学会用软件的方法实现步进电机的脉冲分配,即用软件的方法代替硬件的脉冲分配器。

(4)掌握带有PWM 和I/O 的CPU 编程实现其相应功能的主要方法。

4.3 实验环境

(1)ADS1.2开发环境

(2)博创UP-NETARM3000 嵌入式开发平台(3)PC(4)串口线

4.4 实验内容及要求

学习步进电机和直流电机的工作原理,了解实现两个电机转动对于系统的软件和硬件要求。学习ARM知识,掌握PWM 的生成方法,同时也要掌握I/O 的控制方法。

(1)编程实现ARM芯片的一对PWM 输出用于控制直流电机的转动,通过A/D 旋钮控制其正反转及转速

(2)编程实现ARM的四路I/O 通道实现环形脉冲分配用于控制步进电机的转动,通过A/D 旋钮转角控制步进电机的转角。

(3)通过超级终端来控制直流电机与步进电机的切换。4.5 实验设计与实验步骤

(1)新建工程,将“电机转动控制实验”中的文件添加到工程(2)编写直流电机初始化数(MotorCtrl.c)(3)控制直流电机与步进电机

4.6 实验过程与分析

(1)通过把从串口中得到控制信息的代码修改成从zlg7289芯片中读取小键盘信息,从而利用试验台的小键盘来控制步进电机和直流电机的切换

(2)A/D转换可以把电信号转换成数字信号来控制电机的转速。for(;;)

{ loop:

//if((rUTRSTAT0 & 0x1))//有输入,则返回

if(rPDATG&ZLG7289_KEY)//17键小键盘控制电机

{

*Revdata=RdURXH0();

goto begin;

}

Delay(10);ADData=GetADresult(0);

if(abs(lastADData-ADData)<20)

goto loop;Delay(10);count=-(ADData-lastADData)*3;

//(ADData-lastADData)*270/1024为ad旋钮转过的角度,360/512为步距角,//由于接了1/8减速器,两者之商再乘以8为步进电机相应转过的角度

if(count>=0)

{//转角大于零

for(j=0;j

{

for(i=0;i<=7;i++)

{

SETEXIOBITMASK(stepdata[i], 0xf0);

Delay(200);

}

}

}

else

{//转角小于零

count=-count;

for(j=0;j

{

for(i=7;i>=0;i--)

{

SETEXIOBITMASK(stepdata[i], 0xf0);

Delay(200);

}

}

} lastADData=ADData;

} }

(3)S3C44B0X 具有6 个16bit定时器,每个定时器可以基于中断模式或 DMA模式运行。在定时中断服务程序中写需要定时处理的程序,每隔一段时间就会运行一次。

4.7 实验结果总结

利用A/D转换器实现了对直流电机和步进电机的控制,利用实验设备上自带的小键盘实现了A/D转换器对两个电机控制的切换。

4.8 心得体会

通过本次实验,熟悉了ARM自带的六路(三对)PWM,并对直流电机和步进电机的工作原理有了进一步的了解。

5.实验五

5.1 实验名称

LCD驱动及触摸屏实验

5.2 实验目的

掌握LCD显示原理及显示驱动的嵌入式系统编程实现方法;学习基于ARM的LCD 显示驱动控制方法,通过对ARM 内置的LCD 控制器进行编程实现驱动LCD显示屏;学习触摸屏基本原理,理解触摸屏的输出标定以及与LCD 显示器配合的过程,编程对触摸屏进行控制。

5.3 实验环境

(1)ADS1.2开发环境(2)博创UP-NETARM3000 嵌入式开发平台(3)PC(4)串口线

5.4 实验内容及要求

(1)学习LCD显示器的基本原理,理解其驱动控制方法(2)编程对触摸屏进行控制,实现:

1.点击触摸屏上两点后,两点之间画出一条直线。2.点击触摸屏并在其上移动,显示移动轨迹

(3)编程实现总线方式驱动模块的LCD和ARM内置的LCD控制器来驱动LCD

5.5 实验设计与实验步骤

(1)新建工程

(2)定义有关常量与宏

#define LCDWIDTH 320 #define LCDHEIGHT 240 U32* pLCDBuffer16=(U32*)0xc000000;// 一级缓存指针 U32 LCDBuffer[LCDHEIGHT][LCDWIDTH];//二级缓存(3)编写LCD 初始化函数(4)编写LCD 刷新函数(5)编写主函数

5.6 实验过程与分析

(1)通过不断刷新的方式获得LCD液晶屏幕的动画。即刷新函数将二级缓存LCDBuffer 的数据由32 位彩色图形信息转换成8 位256 色的图形信息,然后放到pLCDBuffer16指向的一级缓存。

(2)触摸屏的先得到触屏输出的电信号的值,然后转换为实际的屏幕坐标,再根据动作来决定如何处理缓存信息,刷新LCD。

LCD二级缓存矩阵: for(i=0;i<9;i++){ switch(i){ case 0: jcolor=0x00000000;// 黑色 break;case 1: jcolor=0x000000e0;// 红色 break;case 2: jcolor=0x0000d0e0;// 橙色 break;case 3: jcolor=0x0000e0e0;// 黄 break;case 4: jcolor=0x0000e000;// 绿色 break;case 5: jcolor=0x00e0e000;// 青色 break;case 6: jcolor=0x00e00000;// 蓝色 break;case 7: jcolor=0x00e000e0;// 紫色 break;case 8: jcolor=0x00e0e0e0;// 白色 break;} for(k=0;k<240;k++)for(j=i*32;j

5.7 实验结果总结

本次实验由于坐标设定的问题并没有成功实现触摸痕迹的显示,但在测试过程中,在触摸屏上点击或移动时会在超级终端上有显示。

5.8 心得体会

虽然本次实验不太成功实现,但对LCD屏幕和触摸屏的工作原理有了进一步的了解,更好的掌握了LCD显示原理及显示驱动的嵌入式系统编程实现方法。

6.实验六

6.1 实验名称

ucos-II裁剪实验

6.2 实验目的 掌握μcos-II裁剪的基本原理与嵌入式编程实现方法;学习如何根据具体情况对μcos-II操作系统进行裁剪,从而得到即满足需要,又非常紧凑的应用软件系统。

6.3 实验环境

(1)ADS1.2开发环境

(2)博创UP-NETARM3000 嵌入式开发平台(3)PC(4)串口线

6.4 实验内容及要求

(1)通过对μcos-II配置文件(OS_CFG.H)中相关的配置常量进行设置,实现对μcos-II的裁剪

(2)给出裁剪的详细过程与裁剪结果说明,并生成裁剪后的操作系统文件。

6.5 实验设计与实验步骤

(1)新建工程,将ucosII移植的文件添加到工程中。

(2)编辑os_cfg.h头文件。

(3)将裁减后的系统所需用到的功能宏定义配置常量置为1,实现系统的裁减。(4)编译生成新的ucosII系统。

6.6 实验过程与分析

(1)配置功能常量,将裁剪后的系统需要用到的功能配置常量设为1(2)裁减信号量数据(3)配置数据结构

OS_MAX_TASKS,若程序中用到了三个任务,则该值的最小值为3 OS_LOWEST_PRIO设置程序中最低任务的优先级

OS_TASK_IDLE_STK_SIZE设置UC/OS操作系统中空闲任务堆栈的容量 OS_TASK_STAT_STK_SIZE设定统计任务的任务堆栈容量

6.7 实验结果总结

通过本次实验,裁减了系统,修改了某些数据结构相关的常量,节省了内存空间

6.8 心得体会

通过本次实验主要学习到了如何根据具体情况对μcos-II操作系统进行裁剪,从而得到即满足需要,又非常紧凑的应用软件系统。

7.实验七

7.1 实验名称

ucos-II移植实验

7.2 实验目的

了解µC/OS-II 内核的主要结构,掌握ARM的C语言和汇编语言的编程方法;了解ARM7处理器结构;掌握将µC/OS-II 内核移植到ARM 7 处理器上的基本原理与嵌入式编程实现方法

7.3 实验环境

(1)ADS1.2开发环境

(2)博创UP-NETARM3000 嵌入式开发平台(3)PC(4)串口线

7.4 实验内容及要求

(1)将µC/OS-II 内核移植到ARM7 微处理器S3C44B0上。(2)编写两个简单任务,在超级终端上观察两个任务的切换。

7.5 实验设计与实验步骤

(1)新建工程

(2)该实验的文件分为两类,其一是 STARTUP目录下的系统初始化、配置等文件,其二是uCOS-II 的全部源码,arch 目录下的3 个文件是和处理器架构相关的3.定义驱动函数(tchscr.c)(3)设置os_cpu.h 中与处理器和编译器相关的代码(4)用C 语言编写6 个操作系统相关的函数(5)用汇编语言编写4 个与处理器相关的函数

(6)编写一个简单的多任务程序来测试一下移植是否成功(7)编译并下载移植后的uCOS-II

7.6 实验过程与分析

(1)首先需要对相关寄存器做详细的设定(2)用汇编语言编写与处理器相关的函数(3)用分时的方法同时运行两个任务

OS_STK TaskName_Stack[STACKSIZE]={0, };//任务堆栈 void TaskName(void *Id);//任务函数

#define TaskName_Prio N //任务优先级

在main()函数中调用OSStart()函数之前用下列语句创建任务: OSTaskCreate(TaskName,(void*)0,(OS_STK*)&TaskName_Stack[STACKSIZE-1], TaskName_Prio);OSTaskCreate()函数的原型是:

INT8U OSTaskCreate(void(*task)(void *pd), void *p_arg, OS_STK *ptos, INT8U prio);(4)编写任务函数

7.7 实验结果总结

通过实验达到了ucosII系统移植的目的,并编写了一个简单的多任务程序,分时运行。

7.8 心得体会

通过本次实验了解了µC/OS-II 内核的主要结构,掌握了ARM的C语言和汇编语言的编程方法。

8.实验八

8.1 实验名称

各接口模块相互衔接综合实验

8.2 实验目的

(1)回顾串口、键盘、LED接口、A/D、电机转动、定时器中断、LCD接口及触摸屏驱动控制等接口模块驱动设计及开发方法

(2)综合应用以上全部或者部分模块,实现一个嵌入式综合应用系统,要求至少用到8个模块中的5个

8.3 实验环境

(1)ADS1.2开发环境

(2)博创UP-NETARM3000 嵌入式开发平台(3)PC(4)串口线

8.4 实验内容及要求

(1)综合应用串口、键盘、LED接口、A/D、电机转动、定时器中断、LCD接口及触摸屏驱动控制等全部或者部分模块(2)实现一个嵌入式综合应用系统,要求至少用到8个模块中的5个,尽量使综合应用系统具备合理的功能。

8.5 实验设计与实验步骤

(1)运行ADS1.2开发环境(2)新建工程文件

(3)将综合实验中用到的文件放到这个工程文件中(4)下载编译好的文件到嵌入式控制器中运行

8.6 实验过程与分析

(1)本次实验设计主要是通过中断来实现,设定了flag=1,2,3,4,5,6六个标志位,对应不同的键值来实现功能的切换

(2)通过num/lock键来控制直流电机(3)通过“/”键来控制步进电机

(4)通过“*”键来控制屏输出“hello world”(5)通过“+”键来实现LED灯的计时

(6)通过“DEL”键来实现清屏和LED灯的清除

(7)通过“enter”键来进入到键值控制LED显示的功能

8.7 实验结果总结

实验最终能实现5个功能的切换,但不足的是未涉及到触摸屏的设计,并且最后的键值控制LED灯不能实现正常的中断跳转。

8.8 心得体会

通过本次综合性的实验来综合之前做的串口、键盘、LED接口、A/D、电机转动、定时器中断、LCD接口及触摸屏驱动控制实验,回顾了之前的知识,对整体的运用有了进一步的了解,但是实验结果仍有很多的不足,需要改进。

9.实验总结与心得体会

篇3:嵌入式系统调研报告

随着社会的发展, 社会对毕业生要求越来越高, 要想提高毕业生的就业率, 并使之能更好地适应社会对人才的需求, 高校的部分课程的教学模式与教学方法必须有所改变。嵌入式系统是一门理论性与实践都很强的学科, 它不仅需要前面一些课程理论知识的铺垫, 而且还要求同学们在课余时间加强动手练习, 所以仅凭教师在理论课讲理论, 学生在实验课完成指定实验是不够的。针对我院学生的特点, 课题组结合校园网和信息化技术开发了嵌入式系统课程辅助教学平台, 该平台通过提供与本门课程相关知识的资料、每节课需要预习的知识点, 每节实验课基本实验的演示视频, 并提供预习情况的监督功能来保证同学的预习质量。通过提供嵌入式课程设计管理功能来保证同学课余时间的动手能力, 通过提供交流论坛来为同学提供一个经验交流环境。

2. 系统设计

2.1 系统功能

根据课程建设、学院和学生的要求, 本系统需要完成功能如下:

(1) 课程要求:系统应能显示本门课的课程大纲、教学日历、课程表和相关的上课规定等文件, 让同学在上课之前对本门课的相关要求有一定的了解, 并能在系统内发布相应的公告信息。

(2) 资料共享:可以上传教师上课课件、相关辅导材料和工具软件。上传的资源不要求多, 但必须精, 因为一门课在一个学期学习内学习时间有限, 繁多的教学资料会使得同学抓不住重点。

(3) 预习管理:任课教师在课程开课前按照教学大纲和教学日历, 将上课内容按章划分好知识点, 发布在网上供学生阅读, 实验课应将实验指导书, 相关工具介绍、实验的基本操作视频放在网上, 以便学生能提前预习。学生通过用户名登录后, 对于课前预习知识点来说, 学生每次浏览知识点后, 系统就会记录下来其是否浏览过。对于实验视频演示系统, 每次学生观看, 系统会记录下来其是否浏览过, 浏览了多长时间, 并可以将此作为评判平时成绩因素之一。

(4) 交流论坛:为学生提供一个相关交流学习的一个空间, 老师也可利用解答版块解决学生提出的问题, 交流论坛不但可以回答学生在学习过程当中遇到的问题, 也可以将被解答过答案留给以后学习本门课学生的作为参考。

2.2 系统框架

本系统共五个功能模块, 分别为:公告管理模块、资源管理模块、大作业管理模块、交流论坛模块和用户管理模块。系统框图如图1所示。

3. 系统实现

本系统是在Windows XP操作系统下, Adobe Dreamweaver CS6软件环境下, 以PHP为编程语言开发完成的, 数据库采用My Sql 5.0, 系统采用通用B/S结构。

3.1 公告管理模块

该系统包括发布公告、公告管理等子功能模块。该模块可以由任课教师和管理员进行操作。

(1) 公告管理子模块

主要发布上课相关公告, 交作业时间。为了保证是学生亲自动手完成的, 每次学生交作业后, 进行答辩, 答辩的时间、地点在公告里进行通知, 每次答辩成绩和实课成绩通过公告进行发布。

(2) 公告管理子模块

主要完成公告的删除与修改功能。

3.2 资源管理模块

该系统包括上传资料、管理资料、课前预习等子功能模块。

(1) 上传资料子模块

主要完成教师上传课件、课程相关资源、实验视频等相关资料, 此子模块的功能可以由任课教师和管理员进行操作, 本子模块对资料的大小没有限制。

(2) 管理资料子模块

主要完成对上传资料的管理, 包括修改资料名称、修改资料分类、删除上传资料等。本子模块可以由管理员和任课教师进行操作。

(3) 课前预习子模块

该子模块主要完成对学生预习情况记录的功能, 如果学生下载过理论课预习资料视其阅读过, 如果学生在上实验课前浏览过教学视频且浏览时间为视频最后时间, 视为浏览过。

3.3 大作业管理模块

该模块包括教师出题子模块、学生选题子模块、学生分组子模块和上传大作业资料子模块。

(1) 教师出题子模块

教师在此子模块里出大作业的题目, 学生根据自己的兴趣选择大作业题目。

(2) 学生选题子模块

学生通过在本模块里选择自己的大作业题目。

(3) 学生分组子模块

学生选择题目之后按照教师规定的功能模块进行分组, 学生分组之后将组信息填在本子模块里。

(4) 上传大作业资料子模块

学生完成大作业后, 将答辩用PPT、相关程序和课程论文传至本模块。

3.4 交流论坛模块

该模块采用Discuz X2.5论坛模版, 主要包括前沿技术、问题讨论、老师答疑和资源共享等版块。

在这个模块里, 学生们可以讨论问题, 也可以给任课教师留言, 由任课教师回答相关问题。

3.5 用户管理模块

本系统不能用户自己注册, 所有注册均由管理员进行添加, 该子模块包括学生用户管理子模块、教师用户管理管理子模块和管理员用户管理子模块。

4. 结束语

本系统在本学期开发完成, 目前正在使用, 系统操作比较稳定, 基本上能满足辅导要求, 但是还存在如上传的资料不够精简、预习知识点不够全面等问题。

参考文献

[1]孙宝军.课程建设与大学生毕业设计互溶性的思考[J].现代计算机, 2013, 13:38-40.

[2]林祥果.基于“项目导向, 任务驱动”的高职嵌入式系统课程开发实践[J].顺德职业技术学院学报, 2012, 3:50-53.

[3]郑广海, 曲英伟.“嵌入式Linux操作系统及实践”课程改革[J].计算机教育, 2012, 4:37-40.

[4]潘巧书.计算机教学辅助系统的应用研究[J].中国电子商情:科技创新, 2013, 17:26-26.

篇4:嵌入式系统在温控系统中的应用

1.前言

温度作为一个基本物理量,它是一个与人们的生活、生产密切相关的重要物理量。生活和工业生产过程中温度作为一种常用的主要被控参数,我们需要对温度参数进行检测并利用该参数进行自动控制。采用单片机来对温度进行控制,不仅具有控制方便、组态简单和灵活性大等优点,而且可以大幅度提高被控温度的技术指标,从而能够大大提高产品的质量和数量。因此单片机对温度的控制问题是一个工业生产中经常会遇到的问题。

2.国内外发展现状

目前国内外的温度控制方式越来越趋向于微型化和智能化,温度测量首先是由温度传感器来实现的。测温仪器由温度传感器和信号处理两部分组成。随着工业生产效率的不断提高,自动化水平与范围也不断扩大,因而对温度检测技术的要求也愈来愈高,一般可以归纳以下几方面。

(1)扩展检测范围 现在工业上通用的温度检测范围为-200-3000℃,而今后要求能测量超高温与超低温。尤其是液化气体的极低温度检测更为迫切,如10K以下的温度检测是当前重点研究课题。

(2)扩大测温对象 温度检测技术将会由点测温发展到线、面,甚至立体的测量。应用范围己经从土业领域延伸到环境保护、家用电器、汽车工业及航天工业领域。

(3)发展新型产品 利用以前的检测技术生产出适应于不同场合、不同工况要求的新型产品,以满足用户需要。同时利用新的检测技术制造出新的产品。

(4)适应特殊环境下的测温 对许多场合中的温度检测器有特殊要求,如防硫、防爆、耐磨等性能要求;又如移动物体和高速旋转物体的测温、钢水的连续测温、火焰温度检测等。

(5)显示数字化 温度仪表向数字化方向发展。其最大优点是直观、无读数误差、分辨率高、测量误差小,因而有广阔的销售市场。

(6)标定自动化 应用计算机技术,快速、准确、自动地标定温度检测器。根据分析,由单片机组成的温控系统,通过在单片机外部添加各种接口电路,可构成单片机最小系统,用以实现对温度控制对象的温度的显示和控制。同时也能根据实际情况实现数据处理、报警,对各个参数以一定的周期进行检查和测量,检测的结果经处理后再进行显示和报警,以提醒操作人员注意或直接用于生产控制。

3.应用情况

嵌入式温控系统现在应用非常广泛,可以说深入到了生活的方方面面,如蔬菜大棚智能温度控制系统、贮液容器温控系统、汽车空调温控系统、电加热炉温度控制系统等。

(1)蔬菜大棚智能温度控制系统 冬季塑料蔬菜大棚最重要的一个管理因素是温度控制。温度过低,蔬菜会冻死或停止生长,所以要控制温度在蔬菜适宜的范围内。如果仅靠人工控制既耗费人力、物力,又容易发生差错。为此设计智能化温控系统,控制蔬菜大棚温度,适应生产需求。蔬菜大棚智能温度控制系统的研制水到渠成。

(2)贮液容器温控系统 贮液容器溫控系统中以贮液容器温度为被控参数,蒸汽流量为控制参数,输入贮液容器冷物料的初温为前馈控制,构成前馈一反馈控制系统,从而达到控制贮液容器温度,满足工艺要求的目的。

(3)汽车空调温控系统 现代化的汽车空调就是能将汽车室内空间的环境调整到对人体最适宜的状态,创造良好的车内环境,以提高司机的工作效率和保护乘员的身体健康。目前高档轿车中用各种微处理器完成各种控制,汽车空调温控系统技术也有了飞速的发展。

(4)电加热炉温度控制系统 电加热炉随着科学技术的发展和工业生产水平的提高,已经在冶金、化工、机械等各类工业控制中得到了广泛应用,并且在国民经济中占有举足轻重的地位。嵌入式电加热炉温度控制系统现在正被广泛地使用。

4.技术情况分析

下面对使用80C51和18B20的系统进行分析:

(1)硬件 硬件主要包括中央处理器80C51、温度传感器18B20、键盘、LED等。

(2)软件 系统软件设计时可以采用模块化的结构和层次设计思想,不仅方便了设计和使用,也有利于以后系统的扩展和升级。系统软件可以包括主程序、数据采集处理模块,可以使用PID算法,可以包括声光报警模块、通讯模块等。

从以上分析不难看出,使用单片机进行温控系统的开发已具有成熟的技术。

5.趋势

随着微电子技术的不断发展,集成了CPU、存储器、定时器/计数器、并行和串行接口、看门狗、前置放大器甚至A/D、D/A转换器等电路在一块芯片上的超大规模集成电路芯片出现了。以单片机为主体,将计算机技术与测量控制技术结合在一起,又组成了所谓的“智能化测量控制系统”,也就是智能仪器。

与传统仪器仪表相比,智能仪器具有以下功能特点:

(1)操作自动化 仪器的整个测量过程如键盘扫描、量程选择、开关启动闭合、数据的采集、传输与处理以及显示打印等都用单片机或微控制器来控制操作,实现测量过程的全部自动化。

(2)具有自测功能 包括自动调零、自动故障与状态检验、自动校准、自诊断及量程自动转换等。

(3)具有数据处理功能 具有数据处理功能,这是智能仪器的主要优点之一。智能仪器由于采用了单片机或微控制器,使得许多原来用硬件逻辑难以解决或根本无法解决的问题,现在可以用软件非常灵活地加以解决。

(4)具有友好的人机对话能力 智能仪器使用键盘代替传统仪器中的切换开关,操作人员只需通过键盘输入命令,就能实现某种测量功能。与此同时,智能仪器还通过显示屏将仪器的运行情况、工作状态以及对测量数据的处理结果及时告诉操作人员,使仪器的操作更加方便直观。

(5)具有可程控操作能力 一般智能仪器都配有GPIB、RS232C、RS485等标准的通信接口,可以很方便地与PC机和其他仪器一起组成用户所需要的多种功能的自动测量系统,来完成更复杂的测试任务。

随着嵌入式在温控系统的应用,温控系统也具有了操作自动化功能、自测功能、数据处理、人机对话能力、可程控能力等功能,随着嵌入式技术的不断发展,温控系统应用的领域会越来越大,温控系统也会向微型化、高度集成化、控制简单化等方向发展。

6.结论

嵌入式温控系统具有良好的动态性能,控制精度高,控制效果稳定、良好,可以满足各个行业的不同要求。随着智能温控系统的不断普及和发展,基于高性能处理器的嵌入式温控系统将会有更加广阔的用武之地。

篇5:嵌入式系统实验报告

号:

名:

级:13电子信息工程

指导老师:

苏州大学 电子信息学院

2016年12月

实验一:一个灯的闪烁

1、实验要求

实现PF6-10端口所连接的任意一个LED灯点亮

2、电路原理图

图1 LED灯硬件连接图

3、软件分析

RCC_Configuration();/* 配置系统时钟 */

GPIO_Configuration();

/* 配置GPIO IO口初始化 */

for(;;)

{

GPIOF->ODR = 0xfcff;

/* PF8=0--> 点亮D3 */

Delay(1000000);

GPIOF->ODR = 0xffff;

/* PF8=1--> 熄灭D3 */

Delay(1000000);

4、实验现象

通过对GPIOF8的操作,可以使LED3闪烁

5、实验总结

这是第一次使用STM32开发板,主要内容是对IO端口进行配置,点亮与IO端口相连接的LED灯,闪烁周期为2S。通过本实验对STM32开发板的硬件原理有了初步了解。

实验二:流水灯

1、实验要求

实现PF6-10端口所连接的5个LED灯顺次亮灭

2、电路原理图

图1 流水灯硬件连接图

3、软件分析

int main(void){

RCC_Configuration();/* 配置系统时钟 */

GPIO_Configuration();/* 配置GPIO IO口初始化 */

for(;;)

{

GPIOF->ODR = 0xffbf;

/* PF6=0--> 点亮LED1 */ Delay(5000000);GPIOF->ODR = 0xff7f;

}

/* PF7=0--> 点亮LED2 */ Delay(5000000);

GPIOF->ODR = 0xfeff;

/* PF8=0--> 点亮LED3 */ Delay(5000000);

GPIOF->ODR = 0xfdff;

/* PF9=0--> 点亮LED4 */ Delay(5000000);

GPIOF->ODR = 0xfbff;

/* PF10=0--> 点亮LED5 */ }

4、实验现象

LED1~LED5依次点亮,亮灭的时间间隔都为1S。

5、实验总结

本次实验对STM32开发板的GPIO端口进行进一步学习,通过程序可以实现流水灯的闪烁。

实验三:单级外部中断

1、实验要求

按下某个按键,触发中断,中断服务程序改变LED灯状态

2、电路原理图

图3 SW1硬件原理图

3、软件分析

int main()

{

RCC_Configuration();

GPIO_Configuration();

GPIO_Write(GPIOF,0xffff);Delay(5000);

while(1)

{

}

/* 配置系统时钟 */

/* IO口初始化 */

/* 全灭 */

if(GPIO_ReadInputDataBit(GPIOA, GPIO_Pin_8)==0)/* 如果SW1 PA8=0 */ {

GPIO_SetBits(GPIOF, GPIO_Pin_6);

/* LED1点亮 */

Delay(0x1FFFFF);

GPIO_ResetBits(GPIOF, GPIO_Pin_6);

/* LED1 熄灭 */ Delay(0x1FFFFF);} }

4、实验现象

原来5个LED灯都处于熄灭状态,按下SW1,触发中断程序,LED1点亮。

5、实验总结

通过本次实验,可以对某一状态通过外部中断,改变其当前状态。

实验四:多中断嵌套

1、实验要求

按下某个按键,触发中断,中断服务程序改变LED灯状态

2、电路原理图

图4 SW1,SW2,SW3硬件原理图

3、软件分析

NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);NVIC_InitStructure.NVIC_IRQChannel = EXTI0_IRQChannel;

//设定中断源为PA0 NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;//中断占优先级为0 NVIC_InitStructure.NVIC_IRQChannel = EXTI3_IRQChannel;

//设定中断源为PD3 NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 1;//中断占优先级为1 NVIC_InitStructure.NVIC_IRQChannel = EXTI9_5_IRQChannel;//设定中断源为PA8 NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 2;//中断占优先级为2 void EXTI0_IRQHandler(void){ int i=0;if(EXTI_GetITStatus(EXTI_Line0)!= RESET){ for(i=0;i<10;i++){

GPIO_Write(GPIOF,0xffff);

GPIO_SetBits(GPIOF, GPIO_Pin_6);/* LED1 点亮 */ Delay(0x5fFFFF);GPIO_ResetBits(GPIOF, GPIO_Pin_6);/* LED1 熄灭 */

Delay(0x5fFFFF);EXTI_ClearITPendingBit(EXTI_Line0);} } }

void EXTI3_IRQHandler(void)if(EXTI_GetITStatus(EXTI_Line3)!= RESET){ {

int i=0;for(i=0;i<10;i++){

GPIO_Write(GPIOF,0xffff);

GPIO_SetBits(GPIOF, GPIO_Pin_7);/* LED2 点亮 */ Delay(0x5fFFFF);GPIO_ResetBits(GPIOF, GPIO_Pin_7);/* LED2 熄灭 */ Delay(0x5fFFFF);EXTI_ClearITPendingBit(EXTI_Line3);} } } void EXTI9_5_IRQHandler(void){ int i=0;

if(EXTI_GetITStatus(EXTI_Line8)!= RESET){

for(i=0;i<10;i++){

GPIO_Write(GPIOF,0xffff);

GPIO_SetBits(GPIOF, GPIO_Pin_8);/* LED3 点亮 */

Delay(0x5fFFFF);

GPIO_ResetBits(GPIOF, GPIO_Pin_8);/* LED3 熄灭 */

Delay(0x5fFFFF);

EXTI_ClearITPendingBit(EXTI_Line8);} } }

4、实验现象

中断优先级从高到低依次为:SW3,SW2,SW1 原来5个LED灯都处于熄灭状态,按下SW1,LED3应该闪烁10次,当其闪烁5次后按下SW2,LED2也应该闪烁10次,当其闪烁4次后按下SW3,LED1也应该闪烁10次,则当LED1闪烁完10次后,LED2继续闪烁6次,之后LED1继续闪烁5次。

5、实验总结

通过本次实验,可以对LED状态实行中断嵌套,由以上实验现象,得出以下结论:高中断优先级可以打断低优先级,中断系统正在执行一个中断服务时,有另一个优先级更高的中断提出中断请求,这时会暂时终止当前正在执行的级别较低的中断源的服务程序,去处理级别更高的中断源,待处理完毕,再返回到被中断了的中断服务程序继续执行,反之,低中断优先级不可以打断高优先级。

实验五:TIM2的基本应用

1、实验要求

TIM2定时器将LED灯定时点亮和熄灭一定的时间

2、电路原理图

3、软件分析

TIM_Cmd(TIM2, ENABLE);

/* TIM2 enable counter */ TIM_TimeBaseStructure.TIM_Period = 1999;

TIM_TimeBaseStructure.TIM_Prescaler = 35999;

//定时时间为1s void TIM2_IRQHandler(void){ TIM_ClearITPendingBit(TIM2, TIM_IT_Update);

GPIO_WriteBit(GPIOF, GPIO_Pin_6,(BitAction)(1-GPIO_ReadOutputDataBit(GPIOF, GPIO_Pin_6)));}

4、实验现象

LED1灯按照1S的定时时间不断闪烁

5、实验总结

通过本次实验,可以实现对LED灯进行定时控制其闪烁,而不需要延时函数控制了,定时时间较为精准。实验六:TIM2,TIM3,TIM4多定时器的应用

1、实验要求

利用TIM2,TIM3,TIM4定时器使LED灯以不同的频率闪烁

2、电路原理图

3、软件分析

NVIC_InitStructure.NVIC_IRQChannel = TIM2_IRQChannel;NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;NVIC_InitStructure.NVIC_IRQChannel = TIM3_IRQChannel;NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 1;NVIC_InitStructure.NVIC_IRQChannel = TIM4_IRQChannel;NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 2;此处比上一个实验增加了2个定时器,同时又增加了一个优先级

4、实验现象

中断优先级从高到低依次为:TIM2,TIM3,TIM4 首先LED1以1S的定时时间闪烁5次,之后LED2以2S的定时时间闪烁5次,最后LED3以3S的定时时间闪烁5次

5、实验总结

利用定时器可以同时使LED灯按照不同的频率闪烁,但是为了现象明显,可以加一个优 先级,分别观察现象。

实验七:串口USART1读取CPU的ID号

1、实验要求

通过USART1读取 CPU 的 96 bit ID

2、电路原理图

图 开发板USART原理图

3、软件分析

void Get_ChipID(void)/* 获取芯片ID */ { ChipUniqueID[0] = *(u32 *)(0X1FFFF7F0);/* 高字节 */ ChipUniqueID[1] = *(u32 *)(0X1FFFF7EC);

ChipUniqueID[2] = *(u32 *)(0X1FFFF7E8);/* 低字节 */ } void USART_Configuration(void){

USART_InitTypeDef USART_InitStructure;

USART_InitStructure.USART_BaudRate = 115200;

USART_InitStructure.USART_WordLength = USART_WordLength_8b;

USART_InitStructure.USART_StopBits = USART_StopBits_1;

USART_InitStructure.USART_Parity = USART_Parity_No;

USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None;

USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx;

USART_Init(USART1, &USART_InitStructure);

USART_ITConfig(USART1, USART_IT_TXE, ENABLE);

USART_ITConfig(USART1, USART_IT_RXNE, ENABLE);

USART_ClearFlag(USART1, USART_FLAG_TC);

USART_Cmd(USART1, ENABLE);

/* Enable USART1 */ }

4、实验现象

PA9连接的是USART1 Tx,PA10连接的是USART1 Rx,再通过串口调试助手就可 以在电脑上面显示出CPU的ID以及flash容量大小。

5、实验总结

本次实验实现了串口和PC机的传输,可以通过USART1将CPU的ID在电脑上显示出来。

实验八:异步通信USART2的重映射

1、实验要求

实现异步通信USART2的重映射,将数据传送到PC机上

2、电路原理图

图 开发板USART原理图

3、软件分析

void GPIO_Configuration()

/* IO口初始化 */ {

GPIO_InitTypeDef GPIO_InitStructure;

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5;

/* USART2 Tx--> PD05 */

GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;/* PD05--> JP7 WR */

GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;

GPIO_Init(GPIOD, &GPIO_InitStructure);

GPIO_PinRemapConfig(GPIO_Remap_USART2, ENABLE);GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6;

/* USART2 Rx--> PD06 */

GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;

GPIO_Init(GPIOD, &GPIO_InitStructure);GPIO_PinRemapConfig(GPIO_Remap_USART2, ENABLE);} 该程序将USART2重映射到PD05,PD06引脚

4、实验现象

PD05连接的是USART2 Tx,PD06连接的是USART2 Rx,通过串口调试助手就可以在电脑上面显示Program Running!

5、实验总结

篇6:嵌入式系统调查报告

工学院范裕婷

内容提要:现今,全过程自动化产品制造、大范围电子商务活动、高度协同科学实验以及现代化家庭起居,是嵌入式系统在企业中应用的大好时机。2012年7月3-6日及7月13-14日,丽水学院工学院“嵌入式系统在企业中应用”调查团一行7人赴丽水市相关地区进行实地走访调查,走访不同类型的相关企业,通过召开座谈会、与公司负责人及技术人员面对面交流、察看应用嵌入式系统设备等多种途径,在此基础上,随队指导老师还给我们讲解嵌入式系统的几大应用及其发展趋势。整体上把握、从细处入手,本文较为系统地分析目前丽水市相关企业对于嵌入式系统应用的情况及存在的问题,并针对丽水的地理等特点,实事求是地提出了推进丽水市相关企业嵌入式系统应用的水平,需要进一步提高对嵌入式系统应用领域及趋势的认识,增强技术设备等对策和建议。

关键词:企业 嵌入式系统一、调查背景

嵌入式系统在工业领域中,一直有着控制的需求。最早的年代是用机械的方式来达到这样的需求;随着时代的进步,进化到使用电子式的控制。在最近几十年中计算机的出现,更使得控制进化到使用计算机,也使得控制可以自动化,而不需要人工操纵。然而计算机最早的设计并不是为了工业自动控制而设计的,但计算机可以做一些类似人类思考的行为或运算,因而工业自动控制不得已只好使用商用计算机。

丽水地处浙西南,浙西南是欠发达地区,和省内先进城市相比,整体水平还比较落后,企业工业化建设与经济社会发展要求还存在一定差距。一方面,丽水围绕“生态立市、工业强市、绿色兴市”三市并举战略以实现跨越式发展,其中,要保证工业化的飞跃发展,就必须大力发展像嵌入式系统等技术型的企业,要打出旅游“金名片”,就要在发展的同时加强对企业技术化发展,以其作为坚强的后盾力量;另一方面,努力发展企业技术化发展,引入技术性设备等发展更高层次的工业化,可以促进丽水在发展“绿谷”文化的同时,还可以拥有坚固的后翼,加快城乡一体化发展,缩小贫富差距。

“嵌入式系统在企业中应用”调查团是丽水学院暑期实践项目。丽水学院是一所市属本科院校,作为智囊团和点子库,为丽水市的发展提供重要参考。为了组织好此次暑期社会实践,在上级团组织和分院党总支的领导下,调研团统筹规划、周密部署、精心实施,由丽水学院工学院嵌入式系统专业课老师任指导老师,电信专业、数控专业、计算机专业等7名同学为队员,大家各司其职,分工明确,认真落实实践前后各项工作。

二、嵌入式系统在企业中应用总体情况

过去:嵌入式系统通常是深嵌于最终产品之中,以系统控制为基础,一般不与外界连接。其微控制器在一个相当封闭的系统中工作,定时查询外设、收集数据、完成简单的处理工作,以及控制开关和LED指示灯。此外,微控制器也进行少量的数据操作或数据传输。由于它们不会与局域网(LAN)或互联网(Internet)连接,所以不存在保安的问题。比如:此次调研位于南山工业园的永通科技公司,此公司以生产LED等各种灯具为主,其中,就用到嵌入式系统编程控制进行一系列生产线作业。

现在:现今的嵌入式系统一般都要连接到局域网,这样就有数

十、甚至上百个控制器连接在一起。举例说,汽车制造和工业控制领域中的CAN有上百个微控制器在相互作用;ZigBee 无线控制网络也有若多数量的微控制器互连在一起。而且,随着嵌入式网络越来越复杂(因此需要更大的网络带宽和更远的传输距离),嵌入式以太网也开始涉足于工业控制、建筑物自动化、医疗和保安产品市场。目前市场的发展趋势是将这些局域网需要通过企业内联网或外联网特别是互联网与外界连接。嵌入式系统联网要求的不断增加,导致微控制器必须具备更多性能,更强的互连性,增加程序和数据内存空间来支持相应的通信协议,提高性能和处理带宽以进行系统传输数据、执行通信协议和提供严密的保安能力。在需要通过内联网或互联网监控CAN或ZigBee 网络的应用环境中,嵌入式微控制器必须能支持10/100M以太网、CAN、ZigBee 网络以及其他网络协议,更必须具有先进的安全加密算法。

另一个影响嵌入式系统的因素是通用串行总线(USB)的快速普及,尤其是在 PC 及其外设领域。与提供基本通信链路的传统通用异步收发器(UART)接口

不同,USB是一种内置丰富驱动程序的即插即用式总线接口,能缩短开发周期和设备安装时间。不但设计人员喜欢这种接口,终端用户也因为不必为新购的外设安装加载新的设备驱动程序而乐于使用。再考虑到采用笔记本电脑对复印机、自助售货机、ATM机,工厂自动化设备、家用安全系统等完成系统设置和现场服务,可以预计USB在嵌入式系统将占一重要席位。新款的笔记本电脑都只配备了USB接口,所以由它们服务的系统也必须有USB接口,否则这些系统便得采用旧款PC或USB适配器。

“信息家电——数字机顶盒”、“嵌入式应用——汽车电子”、“智能玩具与机器人”、“工业控制——机床、电子、交通、航空航天等”等都是嵌入式系统现在的应用。

将来:2012年8月30日,微软在广州召开嵌入式研讨会,与来自金融、电子、教育、医疗等行业客户一同探讨嵌入式技术的发展趋势,体验微软全新的嵌入式平台。随着Windows 8即将发布,对应的嵌入式的Windows平台也一定会带来全新的用户体验。威创、广电运通、天河弱电、海格通信、金鹏集团、广有通信等业内150多位客户代表共同分享了微软领先的嵌入式创新平台及成功的行业解决方案。

2012年8月21日 至23日,深圳国际工业计算机及嵌入式系统展览会由深圳市创意时代会展有限公司在深圳会展中心举办。此展会是中国唯一专著于IPC与嵌入式系统的技术型展会。汇集最新IPC与嵌入式系统产品与技术,推动IPC行业向开放、融合、标准化方向发展,展现物联网、智能电力、智能交通、智能安防、汽车电子等行业应用方案,立足深圳,影响中国。还同期举办更多高端论坛,汇聚行业智慧。这次的主打产品是目前最具有发展潜力的固态硬盘。

因为现代加工技术发展,过去那种设定程序后就让其固定地按程序运行的方式已经不能满足人们对现代产品加工的要求了,人们迫切的希望嵌入式系统具有人机交互的功能。例如我们传统的电视、电冰箱其中也嵌有处理器,但是这些处理器过去只是在控制方面应用。而现在只有按钮、开关的电器显然已经不能满足人们的日常需求,具有用户界面,能远程控制,智能管理的电器是未来的发展趋势。这也是嵌入式系统外设发展的一个原因。

三、目前存在的主要问题

企业真正的需求是什么?

第一,IPC 并未完全符合工业真正的需求。首先在工业领域中,使用的设备通常会是一天24 小时,一年365 天永不停机的运作,而在这运作期间不能有设备损坏的情形发生,所以它所需要的是高稳定性,不是像商业所使用的一般稳定就可以了,例如我们在看电视时,如果电视突然无法看了,于是拍两下就可以看了,这是我们可以接受的;又计算机在开机或使用到一半时发生当机,重新开机之后就可以使用了,这也是可以被接受的,但是以上情形在工业的领域中是无法接受的。

那么要如何达到高稳定性呢?最基本的需求是不要有风扇,而且是在整个设备中都不要有风扇,因为风扇会将环境的灰尘吸入,造成设备损坏,所以没有风扇的设备将会增加其稳定性;另外设备也必须要是密闭式的,也是在防止灰尘以及其它脏乱所侵害;再来工业所需要的设备最好是愈省电愈好,因为用电量高相对的会增加成本;另一个工业需求是体积越小越好,因为体积小相对的在同一个空间中所能摆放的设备比较多,代表可以增加产能。

第二,技术人才队伍数量上有所提升,但基础仍非常薄弱,特别是复合型人才非常缺乏,不少人存在着从小城市跳槽到大城市的想法,导致人才流失。目前我市虽有3所大专院校设置了相关专业,每年为丽水培养信息技术类本专科毕业生1000多人。

第三,资金投入力量不足,应用程度不一致。一方面丽水工业还处于初步阶段,企业发展势头虽好,但规模尚未壮大;另一方面,多数管理者对技术化与企业发展的关系认识不足,因此对企业技术化的投入也很少。

四、对存在问题提出的对策建议

信息时代,数字时代使得嵌入式产品获得了巨大的发展契机,为嵌入式市场展现了美好的前景,同时也对嵌入式生产厂商提出了新的挑战,从中我们可以看出未来嵌入式系统的几大发展趋势:1,网络互联成为必然趋势;2,精简系统内核、算法,降低功耗和软硬件成本;3提供友好的多媒体人机界面;相信将来市场会出现更多,功能强大嵌入式系统产品。现提出以下建议:

一、政府引导与政策支持相结合。在要组织各种类型的研讨会和培训班,使管理者进一步了解企业技术化工作的重要性和紧迫性,特别是丽水位于浙西南欠

发达低于,信息相比较为闭塞。要通过国内外的典型案例分析,使企业真正受到教育和启发。同时各级政府在政策上也要对企业进行引导和支持,把技术化建设列为技术改造的一个重要部分,从政策调控上促进企业的技术化建设。

二、加强优化人才建设。企业技术型建设光靠设备更新是远远不够的,企业中,需要有一批既精通技术、又懂得企业经营管理的优秀专业人才来长期培训和帮助企业的所有其他相关人员,指导他们的各项工作,同时还要保证各个系统的正常运行和对系统的完善与维护工作。因此,培养多层次的人才是企业取得成功的必要条件,也是企业长远发展的客观要求。丽水虽是欠发达地区,但要有吸引人才的源动力。

三、走校企联合之路。

(1)充分利用现有资源促进信息化建设。高校在企业信息化建设中扮演了一个极其重要的角色,高校的优势体现在:人才优势(科技人员众多,各种专业人才聚集);知识与科技优势;创新优势。高校的技术和人才可以较好地弥补中小企业技术人才不足的劣势。实践中,一方面,高校通过对企业人才需求信息及创新需求信息的捕捉,及时调整专业、课程及高校研究方向与内容,主动为企业创新活动服务。另一方面,企业可以通过设立奖学金、基金或订单培养等方式与高校共同培养适应于本企业自身需求特征的人才,同时开展创新合作。

上一篇:微信公众号授权运营书下一篇:人事部年度工作汇报