嵌入式课程设计

嵌入式课程设计
嵌入式课程设计

课程设计报告书

题目: 基于stm32的步进电机控制系统

课程:嵌入式系统课程设计

专业:电子信息科学与技术

2016年 4 月 15 日

课程设计任务书

信息工程学院课程设计成绩评定表

摘要

本文的主要工作是基于STM32步进电机控制系统的设计。随着越来越多的高科技产品逐渐融入了日常生活中,步进电机控制系统发生了巨大的变化。单片机、C语言等前沿学科的技术的日趋成熟与实用化,使得步进电机的控制系统有了新的的研究方向与意义。本文描述了一个由STM32微处理器、步进电机、LCD显示器、键盘等模块构成的,提供基于STM32的PWM细分技术的步进电机控制系统。该系统采用STM32微处理器为核心,在MDK的环境下进行编程,根据键盘的输入,使STM32产生周期性PWM信号,用此信号对步进电机的速度及转动方向进行控制,并且通过LCD显示出数据。结果表明该系统具有结构简单、工作可靠、精度高等特点.

关键词:STM32微处理器;步进电机;LCD显示;PWM信号;

目录

1 任务提出与方案论证 (5)

1.1 任务提出 (5)

1.2 方案论证 (5)

2 总体设计 (6)

2.1系统的硬件设计 (6)

2.2控制系统软件设计 (6)

3 详细设计及仿真 (8)

3.1设计主要程序部分 (8)

3.2调试与仿真 (9)

4 总结 (10)

5 实物图和仿真图 (11)

1 任务提出与方案论证

步进电机控制系统的整个设计中最重要的部分是利用PWM细分实现步进电机调速的处理,虽然PWM调速很早就开始研究应用,但如何用PWM细分调速的快速性和准确性至今仍是生产和科研的课题。随着微电子技术的发展与普及,更多高性能的单片机应用使得PWM细分实现步进电机PWM调速的快速性和准确性都有了极大的提高。

1.1 任务提出

总体方案根据课题要求,本设计采用STM32cortex-M3处理器,由SPGT62C19B 电机控制模块作为直流电机的驱动芯片,由ADC输入电位器产生调速命令,用TFT彩色LCD作为显示模块。

1.2 方案论证

步进电机控制系统硬件方案

本系统主要由一块STM32平台、SPGT62C19B型步进电机驱动模块构成,以STM32为核心,包括电机驱动、电机、A/D转换、LCD显示等模块。系统的结构框图如图 2.1所示。

STM32作为主控芯片,通过I/O端口来控制SPGT62C19B型步进电机驱动芯片,从而实现对步进电机的控制。通过ADC输入电位器产生调速命令反馈给STM32,STM32调节SPGT62C19B型步进电机驱动模块的状态,从而使电机改变转速和方向。同时,电机转速可由彩色液晶LCD显示出来,用ADC输入电位器来对步进电机的转动方向和转速等进行设定。

步进电机控制系统软件方案

硬件功能的实现离不开软件的设计与完成。软件设计是步进电机控制系统设计中最重要、最关键的部分,也是本次毕业设计的难点之处。由于本系统使用STM32平台,运用Keil for ARM开发环境,在Keil u Vision软件平台进行开发。本课题软件设计的思想主要是自顶向下,模块化设计,逐一设计各个子模块,分别进行调试,最后的连调整个程序,判断是否达到预期的要求,做出结论。各个部分函数都可相互调用又相对独立可调,保证调试的便利与程序的可读性。

2 总体设计

第一部分具体介绍了步进电机控制系统的硬件设计,包括SPGT62C19B电机控制模块电路的设计;第二部分阐述了步进电机控制系统的软件设计;

2.1系统的硬件设计

本系统采用STM32作为主控制器,采用ADC输入电位器作为输入部分,步进电机及其驱动电路采用SPGT62C19B型步进电机驱动模块。下面分别对STM32以及相关模块的特性进行具体介绍。

(1)步进电机模块

本设计选用专用的电机驱动芯片SPGT62C19B。SPGT62C19B电机控制模组是为学生以及单片机爱好者学习步进电机和直流电机控制而设计的学习套件。模组采用凌阳SPGT62C19B电机驱动芯片,配置两相步进电机和直流电机各一台,并提供4位LED数码管用来显示电机转速等信息。模组配备的步进电机为35BYJ26型永磁步进电机,工作方式为双极性两相四拍。步进电机是一种将电脉冲转化为角位移的执行机构。当步进电机接收到一个脉冲信号,它就按设定的方向转动一个固定的角度(称为“步距角”)。可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率实现步进电机的调速。(2)LCD显示模块

显示电路是本设计硬件的主要构成部分,STM32外接TFT模块,MzT24彩色TFT模块是一个2.8英寸的TFT模块,内置TFT控制器,对外连接直接通过8位的8080总线进行指令和数据的传输。MzT24有像素点数为240×320,色彩深度为16位色,也就是每一个像素点需要用16位的数据来表示其显示的内容。MzT24模块的显示操作非常简便,需要改变某一个像素点的颜色时,只需要对该点所对应的2个字节的显存进行操作即可。这部分电路连接时主要是把数据准确稳定的显示出来,因此连接电路时需注意端口对应的准确连接,否则严重影响数据显示的稳定,甚至出现显示不出来数据。

2.2控制系统软件设计

控制系统软件设计步骤:

对于一个完整的嵌入式应用系统的开发,硬件的设计与调试工作仅占整个工

作量的一半,应用系统的程序设计也是嵌入式系统设计一个非常重要的方面,程序的质量直接影响整个系统功能的实现,好的程序设计可以克服系统硬件设计的不足,提高应用系统的性能,反之,会使整个应用系统无法正常工作。

不同于基于PC平台的程序开发,嵌入式系统的程序设计具有其自身的特点,在编写嵌入式系统应用程序时,可采取如下几个步骤:

(1) 明确所要解决的问题:根据问题的要求,将软件分成若干个相对独立的部分,并合理设计软件的总体结构

(2) 合理配置系统的资源:与基于8位或16位微控制器的系统相比较,基于32位微控制器的系统资源要丰富得多,但合理的资源配置可最大的限度发挥系统的硬件潜能,提高系统的性能。对于一个特定的系统来说,其系统资源,如Flash、EEPROM、SDRAM、中断控制等,都是有限的,应合理配置系统资源。

(3) 程序的设计、调试与优化:根据软件的总体结构编写程序,同时采用各种调试手段,找出程序的各种语法和逻辑错误,最后应使各功能程序模块化,缩短代码长度以节省存储空间并减少程序的执行时间。

此外,由于嵌入式系统一般都应用在环境比较恶劣的场合,易受各种干扰,从而影响到系统的可靠性,因此,应用程序的抗干扰技术也是必须考虑的,这也是嵌入式系统应用程序不同于其他应用程序的一个重要特点。

Keil for ARM软件开发环境

本次设计的软件部分采用模块化的设计思想,将各个功能都编成了相应的子程序。程序运行时,通过主程序的调用及相应模块之间的嵌套调用,实现系统的整体功能。

本设计所需的STM32的外设包括PA口、PB口、PC口和定时器端口,所以也要对外设的时钟进行设置。由于PA口、PB口、PC口在APB1系统总线外设上,定时器TIM2和TIM3在APB2系统总线外设上,所以要对APB1和APB2总线的时钟频率进行设置。经过APB1与APB2的分频,将SYSCLK转换成可以进行外设及TIM可以接收的系统时钟。在时钟初始化子程序中先对系统时钟的模式进行选择,即将系统时钟设置为HSE模式(外部时钟模式),然后设置AHB时钟等于系统时钟,且设置了低速或高速AHB,最后使能的时钟,时钟初始化子程序的流程。

3 程序设计及仿真3.1设计主要程序部分

(主函数)

#include "led.h"

#include "delay.h"

#include "key.h"

#include "sys.h"

#include "lcd.h"

#include "usart.h"

#include"drive.h"

#include "chinese.h" //?D????ê?

#include "image2lcd.h"//í?????ê?

extern const u8 gImage_jiemian[];

float t1;

u16

t,t11,t12,t13,t14,result;

unsigned char beatcode2[8]={0x0e,0x0c,0x0 d,0x09,0x0b,0x03,0x07,0x06} ;

unsigned char beatcode1[8]={0x06,0x07,0x0 3,0x0b,0x09,0x0d,0x0c,0x0e} ;

int main(void)

{

unsigned char temp=0,angle=0,index=0,flag 1;

unsigned long beat=0;

int key=2;

Drive_Init();

uart_init(9600); //′??ú3?ê??ˉ?a9600

delay_init();

KEY_Init();

LCD_Init();

LED_Init();

while(1)

{

key=KEY_Scan(0);

if(key==1)

{

temp++;

if(temp>2)

temp=0;

}

if(key==2)

{

angle+=15;

if(angle>=360)

angle=0;

flag1=1;

}

if(temp==2)

{

for(index=0;index<8;in

dex++)

{GPIOA->ODR=beatcode2[

index];

delay_ms(2);}

}

else if(temp==1)

{

for(index=0;index<8;in

dex++)

{GPIOA->ODR=beatcode1[

index];

delay_ms(2);}

}

else if(temp==0)

GPIOA->ODR=0;

while(flag1)

{

beat=(angle*4076)/360;

while(beat--)

{

GPIOA->ODR=beatcode1[index]

;

index++;

index=index&0x07;

delay_ms(2);

}

flag1=0;

}

LED0=!LED0;

}

delay_ms(10);

}

北京科技大学 嵌入式课程设计报告

《嵌入式控制系统》课程设计报告 学院 专业班级 姓名 学号 指导教师 _

目录 摘要 (4)

Abstract (4) 引言 (5) 带中断LED数码管驱动程序设计 (6) 1.设计内容 (6) 1.1 基本功能 (6) 1.2 扩展功能 (6) 1.3创新功能 (6) 2.实验设备 (6) 3.设计功能块说明 (6) 4.设计原理 (7) 4.1 LED发光原理 (7) 4.2 八位LED显示器 (8) 5. 实验步骤 (8) 5.1 驱动程序加载 (8) 5.2 添加控件 (8) 5.3基本功能的实现 (9) 5.4 使用指南 (10) 6. 实验结果 (10) 6.1 基本功能实现结果 (10) 6.2 LED数码管清零功能实现结果 (11) 6.3 中断计数功能实现结果 (12) 6.4 频率设置功能实现结果 (13) 7. 心得体会 (14) 附录 (16)

摘要 通过嵌入式控制系统课程的学习并结合本次课程设计,了解嵌入式系统的开发方法和流程,熟悉Intel XScale硬件平台及其应用处理机的使用方法,熟悉Windows CE嵌入式系统的基本原理、概念。能针对Intel XScale硬件平台、应用需求自行定制、优化WinCE操作系统,并独立编写可在Intel XScale嵌入式设备上运行的应用程序。 本课程设计主要实现了LED数码管的驱动程序,中断计数功能、LED显示清零功能、LED 数字显示频率设置的功能。 关键字:WINCE 中断数码管驱动 Abstract Learning Embedded Control Systems and combining the curriculum design can help us understand the Embedded Control Sy stems’ development methods and processes, and be familiar with Intel XScale Hardware platform and its usage. Know well the basic principles and concepts about WINCE. Design and optimize Windows Embedded Compact and compose Application software program that can operate on the Intel XScale Hardware platform. The main achievement of the curriculum design are drivers for LED, Interrupt Count, clean the results of the LED and set up the display frequency of the LED. Key words: WINCE Interrupt Digital Driving

ARM课程设计报告

摘要 单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D 转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。 定时器是对外设时钟(PCLK)进行计数,根据4个匹配寄存器的设定,可以设置为匹配时产生中断或执行其他动作。它还包括4个捕获输入,用于在输入信号发生跳变时捕获定时器的当前值,并可选择产生中断。 关键字:单片机 LPC2106 GPIO 定时器timer 实时时钟外部中断Int 目录 第一章原理与总体方案 (4) 1.1单片机简介 (4) 1.2 LPC2106简介 (5) 1.3单片机的选择 (7) 1.4 LPC2106芯片的选择及设计原理 (8) 第二章硬件设计 (9) 2.1 LED显示电路 (9) 2.2电路图整体设计 (9) 第三章调试 (12) 3.1调试及处理 (12) 第四章测试与分析 (14)

4.1Proteus软件介绍 (14) 4.2仿真结果 (15) 第五章结束语 (16) 5.1结束语 (16) 第1章原理与总体方案 本章阐述了本课题研究的背景,表述了单片机的发展、功能以及LPC2114的简单介绍。阐述了单片机的选择原理以及LPC2106的设计原理。 1.1数字单片机简介 单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D 转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。 近年来,单片机以其体积小、价格廉、面向控制等独特优点,在各种工业控制、仪器仪表、设备、产品的自动化、智能化方面获得了广泛的应用。与此同时,单片机应用系统的可靠性成为人们越来越关注的重要课题。影响可靠性的因素是多方面的,如构成系统的元器件本身的可靠性、系统本身各部分之间的相互耦合因素等。其中系统的抗干扰性能是系统可靠性的重要指标。 单片机的另外一个名称就是嵌入式微控制器,原因在于它可以嵌入到任何微型或小型仪器或设备中。目前,把单片机嵌入式系统和Internet连接已是一种趋势。但是,Internet一向是一种采用肥服务器,瘦用户机的技术。这种技术在互联上存储及访问大量数据是合适的,但对于控制嵌入式器件就成了"杀鸡用牛刀"了。要实现嵌入式设备和Int ernet连接,就需要把传统的Internet理论和嵌入式设备的实践都颠倒过来。为了使复杂的或简单的嵌入式设备,例如单片机控制的机床、单片机控制的门锁,能切实可行地和Internet连接,就要求专门为嵌入式微控制器设备设计网络服务器,使嵌入式设备可以和Internet相连,并通过标准网络浏览器进行过程控制。

基于STM32和uC_OS-II的多任务设计-嵌入式系统课程设计报告

基于STM32和uC_OS-II的多任务设计-嵌入式系统课程设 计报告 NORTH CHINA UNIVERSITY OF SCIENCE AND TECHNOLOGY 嵌入式系统课程设计报告 学生姓名: 学号: 学院: 专业班级: 指导教师: 同组成员: 2016年 12 月 26 日 嵌入式系统课程设计报告 一、课程设计目的 本课程设计是在《嵌入式系统原理与应用》课程的基础上,通过软件编程及仿真调试的实践,进一步掌握嵌入式系统的原理和应用方法,是毕业设计前的一 次重要实践,为今后从事嵌入式系统相关工作岗位打下良好的基础。 二、设计题目及要求 2.1 设计题目: 基于STM32和uC/OS-II的多任务设计 2.2 功能实现:

使用uC/OS-II的任务管理函数和STM32库函数控制相应的寄存器,完成一个多任务设计。整个设计共有4个任务,驱动一个LED指示灯闪烁、由3个LED指示灯组成的流水灯、驱动蜂鸣器和利用swd方式进行printf输出。 2.3 设计要求: 理解和熟练使用KEIL软件、STM32寄存器、STM32库函数和uC/OS-II任务管理函数,用KEIL软件完成编程和调试,下载到开发板中实现4个设定的任务,并完成课程设计报告。 四个任务分别为: (1)驱动1个LED指示灯闪烁、 (2)由3个LED指示灯组成流水灯 (3)驱动蜂鸣器发出响声。 (4)利用swd方式进行printf输出。 三、设计原理说明 3.1 硬件说明 本次课程设计主要使用的是STM32 神舟 IV 号开发板为基础进行课程设计的,本节将详细介绍神舟IV号开发板的各部分硬件原理与实现。 (1)开发板资源图 - 1 - 嵌入式系统课程设计报告

嵌入式课程设计报告

嵌入式课程设计报告设计题目:电子密码锁

、 摘要 随着科技和人们的生活水平的提高,实现防盗的问题也变得尤为突出,传统机械锁构造简单,电子锁的保密性高,使用灵活性好。根据需要设计运用W90P170开发板,制作一款电子密码锁,密码锁通过键盘输入密码,通过在LCD的文字和图片显示当前密码锁的状态。实现设置密码,密码验证,错误密码自锁、图片显示的功能。 目录

一、选题意义及系统功能 (3) 二、硬件设计及描述 (4) 三、软件设计及描述 (5) 四、程序代码 (6) 五、课程设计体会 (11) 六、运行结果 (12) 七、心得体会 (12) 八、参考文献 (13) 九、附录 (13) 一、选题意义及功能描述 1、选题意义 电子密码锁是通过密码输入来控制电路或是芯片工作,从而控制机械的开关闭合、开锁的电子产品。随着科技提高和人们生活水平的提高,对电子密码锁的需求增加。电子密码做较传统的机械锁安全性能更高。 特点如下: (1)保密性好,编程量大,随机开锁的成功率几乎为零。

(2)密码可变,用户可以随时改变密码,防止密码被盗,同时也可以避免人员的更替而使锁的密级下降。 (3)误码输入保护,输入密码多次错误是,系统进行自锁。 (4)无活动零件,不会磨损,寿命长。 (5)使用灵活性好,无需佩戴钥匙,操作简单。 2、功能描述 基本功能: (1)从键盘输入任意6位数字作为密码,将这六位数字经过USI总线存储到Flash芯片中,设置密码完成。 (2)从键盘输入密码,比较键盘输入的密码与Flash中存储的密码是否相同。 (3)如果密码正确,则LED灯点亮;如果密码不正确,则LED灯闪烁,而且如果连续三次输入密码错误则系统锁定,不允许再次输入密码。 扩展功能: (1)首先显示“请输入密码:”,显示密码锁背景图片1。 (2)如果密码正确则显示“密码正确”,显示成功进入系统的背景图片2。 (3)如果密码不正确则显示“密码不正确,请重新输入:” (4)如果连续三次输入密码错误则显示“对不起,您已经连续三次输入密码错误,系统锁定”,显示图片1。

ARM课程设计报告GPIO—流水灯

目录 一、设计目的 (3) 二、设计原理 1、GPIO—流水灯 (3) 2、SPI (7) 3、定时器 (10) 4、实时时钟 (12) 三、所用仪器 (18) 四、EasyARM2131开发套件功能介绍 (18) 五、设计内容:万年历-定时器-流水灯-SPI 1、功能描述 (21) 2、流程图 (22) 3、程序设计 (22) 六、心得体会 (28) 七、参考文献 (29)

一、设计目的 1、根据要求,复习巩固ARM的基础知识。 2、掌握ARM系统的设计方法,特别是熟悉模块化的设计思想。 3、熟练掌握ARM软件和2131开发板的使用。 4、提高综合运用所学的理论知识独立分析和解决问题的能力; 二、设计原理 1、GPIO—流水灯 (1)LPC2131具有多达47个通用I/O 口(GPIO,General Purpose I/O ports),分别为P0[31:0]、 P1[31:16],其中,P0.24未用,P0.31仅为输出口。由于口线与其它功能复用,因而需要进行相关的管脚连接模块(PINSEL0、PINSEL1、PINSEL2)选择连接GPIO,然后通过IODIR进行输入/输出属性设置后才能操作。 当管脚选择GPIO 功能时,有IOSET、IOCLR和IOPIN 3 个寄存器用于控制GPIO 的使用。IOSET 用于口线置位,而IOCLR 则用于口线清零,IOPIN 则反映当前IO口的状态,读回IOSET 则反映当前IO口设定状态。 (2)GPIO的特性和应用 特性: 单个位的方向控制; 单独控制输出的置位和清零; 所有I/O口在复位后默认为输入。 应用: 通用I/O口 驱动LED或其它指示器 控制片外器件 检测数字输入 (3)GPIO引脚描述 GPIO管脚描述见表4.1。 表4.1 GPIO 管脚描述

嵌入式系统设计课设报告分析解析

福州大学 《嵌入式系统设计课设》 报告书 题目:基于28027的虚拟系统 姓名: 学号: 学院:电气工程与自动化学院 专业:电气工程与自动化 年级: 起讫日期: 指导教师:

目录 1、课程设计目的 (1) 2、课程设计题目和实现目标 (1) 3、设计方案 (1) 4、程序流程图 (1) 5、程序代码 (1) 6、调试总结 (1) 7、设计心得体会 (1) 8、参考文献 (1)

1、课程设计目的 《嵌入式系统设计课设》是与《嵌入式系统设计》课程相配套的实践教学环节。《嵌入式系统设计》是一门实践性很强的专业基础课,通过课程设计,达到进一步理解嵌入式芯片的硬件、软件和综合应用方面的知识,培养实践能力和综合应用能力,开拓学习积极性、主动性,学会灵活运用已经学过的知识,并能不断接受新的知识。培养大胆发明创造的设计理念,为今后就业打下良好的基础。 通过课程设计,掌握以下知识和技能: 1.嵌入式应用系统的总体方案的设计; 2.嵌入式应用系统的硬件设计; 3.嵌入式应用系统的软件程序设计; 4.嵌入式开发系统的应用和调试能力 2、课程设计题目和实现目标 课程设计题目:基于28027的虚拟系统 任务要求: A、利用28027的片上温度传感器,检测当前温度; B、通过PWM过零中断作为温度检测A/D的触发,在PWM中断时 完成温度采样和下一周期PWM占空比的修正;PWM频率为1K; C、利用按键作为温度给定;温度给定变化从10度到40度。 D、当检测温度超过给定时,PWM占空比增减小(减小幅度自己设 定);当检测温度小于给定时,PWM占空比增大(增大幅度自己 设定); E、把PWM输出接到捕获口,利用捕获口测量当前PWM的占空比; F、把E测量的PWM占空比通过串口通信发送给上位机; 3、设计方案-----介绍系统实现方案和系统原理图 ①系统实现方案: 任务A:利用ADC模块通道A5获取当前环境温度。 任务B:PWM过零触发ADC模块,在PWM中断服务函数中,将当前环境温度和按键设定温度进行比较,并按照任务D的要求修订PWM占空比。

嵌入式系统课程设计

嵌入式系统课程设计 学号:1070410014030 班级:通信10 姓名:刘豆

嵌入式系统在智能交通中的应用摘要:介绍了嵌入式系统及其操作系统,并将其系统和通用计算机系统作了比较,总结了嵌入式系统产品在ITS(Intelligent Traffic system ),智能交通系统应用中的工作稳定性高,环境适应能力强和设备独立性三个特点,且结合嵌入式产品在ITS中应用的这几个特点,探讨了嵌入式系统在智能交通系统中应用研究。最后,展望嵌入式系统在ITS(智能交通系统)中的广泛应用。 关键词:嵌入式系统;嵌入式操作系;ITS;数字信号 中图分类号: Application of Embedded System in ITS Abstract: This article mainly introduce embedded system and its operation system , the embedded system are compared with general computer system. And this article summarizes three characteristics about embedded systems’ production applied to ITS: the high working stabilities, the strong ability for environment and the independency of equipments .Combining with the application research of embedded systems in ITS。At last, the author prospects that embedded systems are used widely in ITS in the whole nation. Keywords; embedded system; embedded operational systems ; ITS ; digital signal 嵌入式系统如今在实际生活中有巨大应用,观察身边不难发现电子产品、智能家居等大多用嵌入式系统来实现。这篇论文举一个应用实例,即智能交通系统。一个智能交通系统(ITS)主要由交通信息采集、交通状况监视、交通控制、信息发布和通信5大子系统组成。各种信息都是ITS的运行基础,而以嵌入式为主的交通管理系统就像人体内的神经系统一样在ITS 中起至关重要的作用。嵌入式系统应用在测速雷达、(返回数字式速度值)运输车队遥控指挥系统、车辆导航系统等方面,在这些应用系统中能对交通数据进行获取、存储、管理、传输、分析和显示,以提供交通管理者或决策者对交通状况现状进行决策和研究。 1.嵌入式系统与嵌入式操作系统 1.1嵌入式系统 通俗来讲,嵌入式系统是带有操作系统的单片机系统;主要由嵌入式处理器、相关支撑硬件和嵌入式软件系统组。他的框架可分为5个部分:处理器、内存、输入/输出、操作系统与应用软件(如图1所示)。嵌入式软件包括与硬件相关的底层软件、操作系统、图形界面、通讯协议、数据库系统、标准化浏览器和应用软件等。总体看来,嵌入式系统具有便利灵活、性能价格比高、嵌入性强等特点,可以嵌入到现有任何信息家电和工业控制系统中。软件角度来看,嵌入式系统具有不可修改性,系统所需配置要求较低&系统专业性和实时性较强等特点。 1.2 嵌入式操作系统 对于目前发展迅速的信息产品来说,其最关键的核心技术就是嵌入式操作系统。嵌入式操作系统EOS(Embedded Operating System)是一种支持嵌入式系统应用的操作系统软件。嵌入式操作系统具有通用操作系统的基本特点,如能够有效管理越来越复杂的系统资源;能够把硬件虚拟化,使得开发人员从繁忙的驱动程序移植和维护中解脱出来;能够提供库函数、驱动程序、工具集以及应用程序;另外,嵌入式操作系统在系统实时高效性、硬件的相关依赖性、软件固态化以及应用的专用性等方面具有较为突出的特点。

嵌入式系统课程设计报告

湖北民族学院 信息工程学院 课程设计报告书 题目 :基于A RM的数字式万年历 课程:嵌入式系统课程设计 专业:电子信息科学与技术 班级: 03114411 学号: 031441119 学生姓名:田紫龙 指导教师:易金桥 2017年6 月20 日

信息工程学院课程设计任务书 学号031441119学生姓名田紫龙专业(班级)0314411 设计题目基于 ARM 的数字式万年历 1.能测量温度并且实时显示; 2.具有时间显示功能,能够显示年月日,时分秒,并且可以手动调节时间。 设 3. 具有 12 小时制和 24 小时制切换功能。 计 技 术 参 数 对年、月、日、时、分、秒进行计时,还具有闰年补偿等多种功能。温度采集 选用 DS18B20芯片,万年历采用直观的数字显示,数据显示采用1602 液晶显 示模块,可以在LCD1602 上同时显示年、月、日、周日、时、分、秒,还具有 设 时间校准整点灯光提醒等功能。制作仿真和实物。 计 要 求 [1]苏平 . 单片机的原理与接口技术 [M]. 北京 : 电子工业出版社, 2006,1-113. [2]王忠民 . 微型计算机原理 [M]. 西安 : 西安科技大学出版社, 2003,15-55. [3]左金生 . 电子与模拟电子技术 [M]. 北京 : 电子工业出版社, 2004,105-131. [4]新编单片机原理与应用(第二版). 西安电子科技大学出版社, 2007.2 [5]张萌 . 单片机应用系统开发综合实例 [M]. 北京:清华大学出版社, 2007.7 [6] 朱思荣. 51 单片机实现公历与农历、星期的转换[Z].当当电子网 [7]李广弟 . 单片机原理及应用 [M] 北京航空航天大学出版社 ,2004 年 参[8] 王越明 . 电子万年历的设计 [J]. 黑龙江科技信息, 2004 年 考 资 料 2017年 6 月 20 日

arm课程设计报告

课程设计报告 (嵌入式接口技术) 学院:电气工程与自动化学院 题目:基于ARM的多路数据采集系统设计 专业班级:自动化113班 学号:35号 学生姓名:翁志荣 指导老师:温如春 2013 年12月19日

摘要 数据采集系统用于将模拟信号转换为计算机可以识别的数字信号.该系统目的是便于对某些物理量进行监视.数据采集系统的好坏取决于他的精度和速度.设计时,应在保证精度的情况下尽可能的提高速度以满足实时采样、实时处理、实时控制的要求.在科学研究中应用该系统可以获得大量动态;是研究瞬间物理过程的重要手段;亦是获取科学奥秘的重要手段之一. 本次设计是基于ARM的多路数据采集系统,主控器能够对模拟信号产生的各路数据,通过数据采集系统进行采集并在主控器的程控下显示。 关键字:数据采集;模数转换;ARM;实时采样。 Abstract Data acquisition system for digital signal to analog signal conversion can be identified by computer. The system is aimed at facilitating monitoring of some physical quantity. Data acquisition system is good or bad depends on the precision and speed. When the design, should be in the case of ensuring accuracy as much as possible to meet the high speed real-time sampling, real-time processing, the requirement of real time control. The application of this system in scientific research can obtain a large number of dynamic; is an important means to study the instantaneous physical process; and it is also one of the important means of access to the mysteries of Science. Keyword s: data acquisition; ARM; real-time sampling analog-to-digital conversion.

嵌入式系统课程设计

《嵌入式系统设计与应用》课程设计 题目嵌入式系统的实践教学探讨 1.嵌入式系统设计与应用课程的内容概述 1.1 内容概述 本课程适用于计算机类专业,是一门重要的专业课程。它的任务是掌握嵌入式系统的基本概念;掌握嵌入式处理器 ARM 体系结构,包括ARM总体结构、存储器组织、系统控制模块和I/O外围控制模块;掌握ARM指令集和Thumb指令集;掌握ARM汇编语言和C语言编程方法;了解基于ARM 的开发调试方法。它的目的是了解和掌握嵌入式处理器的原理及其应用方法。 1)介绍嵌入式系统开发的基础知识,从嵌入式计算机的历史由来、嵌入式系统的定义、嵌入式系统的基本特点、嵌入式系统的分类及应 用、嵌入式系统软硬件各部分组成、嵌入式系统的开发流程、嵌入 式技术的发展趋势等方面进行了介绍,涉及到嵌入式系统开发的基 本内容,使学生系统地建立起的嵌入式系统整体概念。 2)对ARM技术进行全面论述,使学生对ARM技术有个全面的了解和掌握,建立起以ARM技术为基础的嵌入式系统应用和以ARM核为基础 的嵌入式芯片设计的技术基础。 3)ARM指令系统特点,ARM 指令系统,Thumb 指令系统,ARM 宏汇编,ARM 汇编语言程序设计,嵌入式 C 语言程序设计。 1.2实践教学探讨 在IEEE 计算机协会2004年6月发布的Computing Curricula Computer Engineering Report, Ironman Draf t 报告中把嵌入式系统课程列为计算机工程学科的领域之一,把软硬件协同设计列为高层次的选修课程。美国科罗拉多州立大学“嵌入式系统认证”课程目录包括实时嵌入式系统导论、嵌入式系统设计和嵌入式系统工程训练课程。美国华盛顿大学嵌入式系统课程名称是嵌入式系统

广东海洋大学嵌入式系统课程设计

《嵌入式系统》设计报告学生姓名 Adao (学号) 所在学院数学与计算机学院 所在班级计科1141 指导教师 成绩

目录 1.课程设计目的 (2) 2.系统分析与设计 (2) 3.系统结构图 (2) 4.实现过程 (3) 5.实验效果 (5) 6.代码分析 (6) 7.系统测试出现的问题和解决的方案 (7) 8.系统优缺点 (7) 9.心得体会 (8) 参考文献 (8)

双按键控制流水灯系统开发 1.课程设计目的: 本次课程设计目的主要是对之前所学习的STM32的某个实验进行更深入的学习与了解,弄懂引脚,端口等相关的配置,对实验原理和具体实现有一定的理解,能做到自己通过原理图和使用库函数等把功能实现出来。我选择的是EXTI-外部中断实验并加以整合,具有一定实用功能的系统,可以对外提供服务。 2.系统分析与设计: 本课程设计所定义的系统主要功能为,通过两个按键KEY1(PA0)、KEY2(PC13)可以实现对流水灯进行同步控制,即一个开关控制产生的灯的状态可以被另一个开关去改变,按键控制需要对两个按键的端口,引脚等进行相关配置,并在两个引脚的中断服务程序中完成对流水灯状态同步控制的操作。本还想通过使用SysTick(系统滴答定时器)功能对流水灯进行精确定时,但由于时间比较匆促,最终没有实现。 3.系统结构图: 图3-1

4.实现过程: 1、GPIO的输入模式有上拉输入模式、下拉输入模式、浮空输入模式和模拟输入模式。GPIO 中的每个引脚可以通过配置端口配置寄存器来配置它的模式。每个引脚的模式由寄存器的4个位控制。 上拉/下拉输入模式:1000 浮空输入模式:0100 模拟输入模式:0000 2、STM32的所有GPIO都可以用作外部中断源的输入端。STM32的中断由中断控制器NVIC 处理。STM32的中断向量具有两个属性,一个为抢占属性,另一个为响应属性,其属性编号越小,表面它的优先级别越高。抢占属性会出现嵌套中断。 3、编写NVIC_Configuration()函数配置NVIC控制器的函数。 static void NVIC_Configuration(uint8_t IRQ) { NVIC_InitTypeDef NVIC_InitStructure; //将NVIC中断优先级分组设置为第1组 NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1); /* 配置中断源 */ NVIC_InitStructure.NVIC_IRQChannel = IRQ;//设置中断线 NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;//设置抢占优先级 NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0;//设置响应优先级 NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; NVIC_Init(&NVIC_InitStructure); //对NVIC中断控制器进行初始化 } 4、调用GPIO_EXTILineConfig()函数把GPIOA、Pin0和GDIOC、PIN13设置为EXTI输入线。 GPIO_EXTILineConfig(GPIO_PortSourceGPIOA, GPIO_PinSource0); GPIO_EXTILineConfig(GPIO_PortSourceGPIOC, GPIO_PinSource13); 5、填写EXTI的初始化结构体,然后调用EXTI_Init()把EXTI初始化结构体的参数写入寄存器。编写EXTI_PA0_Config()函数完成各种需要的初始化。 void EXTI_Pxy_Config(void) { GPIO_InitTypeDef GPIO_InitStructure; EXTI_InitTypeDef EXTI_InitStructure; /* config the extiline clock and AFIO clock */

基于ARM9的人脸识别系统 嵌入式报告 课程设计

嵌入式课程设计报告 学院信息电子技术 专业通信工程 班级 学号 姓名 指导教师 2017年07月01日

基于ARM9的人脸识别系统 一、引言 人脸识别背景和意义 人脸识别系统的研究始于20世纪60年代,80年代后随着计算机技术和光学成像技术的发展得到提高,而真正进入初级的应用阶段则在90年后期,并且以美国、德国和日本的技术实现为主;人脸识别系统成功的关键在于是否拥有尖端的核心算法,并使识别结果具有实用化的识别率和识别速度;“人脸识别系统”集成了人工智能、机器识别、机器学习、模型理论、专家系统、视频图像处理等多种专业技术,同时需结合中间值处理的理论与实现,是生物特征识别的最新应用,其核心技术的实现,展现了弱人工智能向强人工智能的转化语音识别、体形识别等,而指纹识别、虹膜识别等都不具有自然性,因为人类或者其他生物并不通过此类生物特征区别个体。 人脸识别具有这方面的特点,它完全利用可见光获取人脸图像信息,而不同于指纹识别或者虹膜识别,需要利用电子压力传感器采集指纹,或者利用红外线采集虹膜图像,这些特殊的采集方式很容易被人察觉,从而更有可能被伪装欺骗。 二、系统设计 1、硬件电路设计 (1)ARM9处理器 本系统所采用的硬件平台是天嵌公司的TQ2440开发板,该开发板的微处理器采用基于ARM920T内核的S3C2440芯片。 ARM9对比ARM7的优势:虽然ARM7和ARM9内核架构相同,但ARM7处理器采用3级流水线的冯·诺伊曼结构,而ARM9采用5级流水线的哈佛结构。增加的流水线设计提高了时钟频率和并行处理能力。5级流水线能够将每一个指令处理分配到5个时钟周期内,在每一个时钟周期内同时有5个指令在执行。在常用的芯片生产工艺下,ARM7一般运行在100MHz左右,而ARM9则至少在200MHz 以上。指令周期的改进对于处理器性能的提高有很大的帮助。性能提高的幅度依赖于代码执行时指令的重叠,这实际上是程序本身的问题。对于采用最高级的语言,一般来说,性能的提高在30%左右。ARM7一般没有MMU(内存管理单元),(ARM720T有MMU)。 (2)液晶显示屏 为显示摄像头当前采集图像的预览,系统采用三星的320x240像素的液晶屏,大小为206.68cm。该液晶显示屏的每个像素深度为2bit,采用RGB565色彩空间。 (3)摄像头 摄像头采用市场上常见的网眼2000摄像头,内部是含CMOS传感器的OV511+芯片。CMOS传感器采用感光元件作为影像捕获的基本手段,核心是1个感光二极

09嵌入式网络协议及其应用开发课程设计报告1

课程设计说明书 学生信息 系别计算机工程学院专业计算机科学与技术 班级姓名学号 课程设计信息 课程名称嵌入式软件开发课程设计 课程设计题目基于QT的直流电机设计 课程设计时间学期第 1~16 周 小组情况指导教师 批改情况 成绩评阅教师批改时间2012年5月 6 日2011-2012学年第2 学期

目录 1.课程设计内容 (3) 2.课程设计目的 (3) 3.背景知识 (3) 4.工具/准备工作 (3) 5.设计步骤与方法 (3) 5.1.步骤 1:设计直流电机控制界面 (3) 5.1.1. 步骤1.1:添加控件事件代码 (4) 5.2. 步骤2:编译程序 (5) 5.2.1. 步骤2.1:redhat主机下编译程序 (5) 5.2.2. 步骤2.2:在ARM板下测试直流电机界面–嵌入式下运行 (6) 6.软件测试截图 (7) 7.设计结果及分析 (7) 8.设计结论 (7) 9.问题及心得体会 (7) 10.对本设计过程及方法、手段的改进建议 (8) 11.任务分配 (8) 12.参考文献【1】C++ GUI Qt4编程(第2版) 兰切特 (Jasmin Blanchette)、萨默菲尔德(Mark Summerfield)、闫锋欣、曾泉人子工业出版社2008 (8) 13.课程设计评价(教师) (8)

课程设计报告 1. 课程设计内容 本课程设计的内容是设计一个基于QT的直流电机设计,支持电机正反转以及设置参数以控制转速。 2. 课程设计目的 考察自己对课程的掌握程度,以及自己实际的动手能力,编程能力。 3. 背景知识 1.嵌入式linux下驱动程序的基本编译方法 2.掌握直流电机控制基本原理 3.QT软件的应用 4. 工具/准备工作 硬件: 安装有QT的PC机一台 软件: WindowsXP操作系统 VMware Workstation 7.0 Red Hat QT 4.6.3 5. 设计步骤与方法 5.1.步骤 1:设计直流电机控制界面 利用QT Creator,ui文件来编写一个良好的用户交互界面:

嵌入式系统课程设计 跑马灯报告

嵌入式系统 课程设计报告 学部 专业 学号 姓名 指导教师 日期 一、实验内容

设计msp430单片机程序并焊接电路板,利用msp430单片机芯片实现对跑马灯、按键识别及数码显示这三大模块的控制 二、实验目的 1.熟悉电路原理图,了解单片机芯片与各大模块间的控制关系 2.增强看图和动手设计能力,为将来从事这个专业及相关知识奠定基础 3.在焊接的同时,理解源程序是如何实现相应功能的 三、实验设备及器材清单 实验设备:电烙铁、烙铁架、尖嘴钳、斜口钳、镊子、万用表等 器材清单: 模块元器件名称单位(个/块) 电源 78051 AMS11171 电容10V100u3 二极管IN40071 104电容2 晶振32768Hz1 33电容2 8MHz2跑马灯发光二极管8 100欧电阻8 74LS5731 104电容2 键盘按键8 10K电阻9 104电容3 103电容1 HD74HC212数码显示7段数码显示(共阴极)1 24脚插座1 74HC1641 14脚插座1复位电路二极管IN40071 电容10V100u1 按键1 10K电阻1 14脚下载口1电路板1 MSP430F149芯片及插座1 四、硬件电路框图

五、程序清单 跑马灯程序#include #define uchar unsigned char #define uint unsigned int int main( void ) { void delay( ); WDTCTL = WDTPW + WDTHOLD; unsigned char i=0,j=0; P2DIR=0XFF; P2SEL=0X00; while(1) { for(i=0;i<10;i++) { P2OUT=0XFF; delay(50); P2OUT=0X00; delay(50); } for(j=0;j<10;j++) { P2OUT=0X55;

嵌入式系统课程设计报告书

成绩学生课程实践能力考查 题目:温度按键设定、显示、报警系统设计 课程名称:嵌入式系统开发专业班级: 学生学号: 学生姓名: 考查地点: 考查时长: 4小时 所属院部: 指导教师: 2017 — 2018学年第 2 学期 金陵科技学院教务

2017-2018学年第2学期《嵌入式系统开发》实践能力考核 任课教师签名: 日期: 温度按键设定、显示、报警系统设计 要求: 1、读取DS18B20温度,在液晶上实时显示,并显示上、下限,初始值上限32,下限26。 2、通过按键可以设置环境温度的上限与下限, WK_UP键按下调节上限,再按下调节下限,再按下调节上限…… KEY1按下加1; KEY0按下减1, 根据上限与下限判断当前温度有没有超出范围。 3、当温度超过上限,LED1隔1秒亮一次。超过下限,LED2隔1秒亮一次。(也可自定义报警方式) 4、串口波特率一律用9600bps。 液晶显示的信息: STM32 test name: xxxxxxxxx Maximum is 32C,Minimum is 26 C The temperature is 29 C,now! (xxxxx就是自己的名字拼音) 目录: 第一章.系统要求 1、1设计要求

1、2设计方案 第二章.硬件设计 2、1开发板原理图 2、2 DS18B20模块 2、3按键模块 2、4 LCD显示模块 2、5 LED 模块 第三章.软件设计 3、1程序流程图 3、2程序部分代码 3、2、1主函数、main、c 3、2、2 LED 函数led、c 3、2、3温度代码 s18b20、c 3、2、4键盘代码key、c 第四章、实物效果图 第五章、课程总结 第一章.设计要求及方案 1、1设计要求 1、读取DS18B20温度,在液晶上实时显示,并显示上、下限,初始值上限32,下限26。 2、通过按键可以设置环境温度的上限与下限, WK_UP键按下调节上限,再按下调节下限,再按下调节上限…… KEY1按下加1; KEY0按下减1, 根据上限与下限判断当前温度有没有超出范围。

嵌入式系统课程设计报告材料

嵌入式系统课程设计报告 课程名称:嵌入式系统课程设计 项目名称:基于ARM实现MP3音乐盒 专业:电子科学与技术

一、设计容 基本功能:预存四首歌曲,实现循环播放; 每个按键对应一首歌曲。 拓展功能:通过按键简单演奏音乐,类似钢琴; 实现两个模式的切换,切歌模式和音量加减模式。 二、设计思路 基础功能: 将音频数据存储在SD卡中,使用FATFS文件系统进行数据的读写,通过SPI2总线将数据传到核。核再将数据通过SPI1总线传送到音频解码模块VS1053,输入的数据(即比特流数据)被解码后送到DAC发出声音。 将音乐存储在SD卡,通过文件的地址来判别将要播放哪一首音乐,通过地址的递增和循环来实现音乐的自动循环播放。按键对曲目的控制,可通过键盘扫描函数,判断哪一个键被按下,使键盘扫描函数返回不同的返回值,实现对文件地址的控制。将此返回值设置为全局变量,可实现在音乐播放中曲目的切换。 另外,我们还利用解码模块实现对音量的控制,使用按键控制音量的提高或降低。使用SPI1总线将TFT显示屏连接到核,显示按键功能、当前曲目、当前模式等信息。 由于开发板只有5个按键,按键数量有限,需要对按键实现曲目切换和音量功能的复用。我们小组设置了两种模式,切歌模式和音量模式,并定义左键为模式切换键,实现不同模式的选择和按键的复用。 拓展功能: 基本思路是通过定时器中断来产生一定频率的50%空占比的脉宽调制波,用此脉宽调制波激励扬声器,从而使扬声器发出一定频率的声音。 所以只要将不同按键的中断子程序设置为对定时器进行不同数据的配置,即可实现不同按键与不同扬声器发生频率的对应。 然后使一个按键的按下与松开均进入中断,且分别实现开启(扬声器发声)与关闭(扬声器不发声)定时器的功能,从而使课题的附加功能表现地更自然。 三、硬件配置 基础功能: (1)SD卡:存储音频数据

基于ARM嵌入式系统接口技术课程设计报告

基于ARM嵌入式系统接口技术课程设计报告 课程设计题目:实时时钟设计 学院:计算机科学与技术学院 班级:计算机09-1班 学号: 姓名: 指导老师:

微型计算机系统与接口技术 课程设计 设计时间:2011年12月19日至 2011年12月23日 设计环境 1.硬件环境:计算机,EV44B0II实验台 2.软件环境:Jediview 集成开发环境 一、基本功能: 利用S3C44BOX的RTC和实验箱上的LCD液晶、4*4小键盘设计一个实时时钟。 1.在LCD上显示当前日期及时间。可按如下格式显示: 日期:XXXX年XX月XX日 时间:XX:XX:XX 班级,姓名 2.利用4*4小键盘校时 校时时LCD的相应位置要有光标提示。 二、定时报警功能 通过小键盘设定报警时刻,报警时刻到,则在LCD上显示(各自不同的)报警图像。 三、步骤: 1.掌握预备知识: a.液晶显示 b.键盘译码 c.掌握S3C44BO芯片 RTC的使用方法 2.设计: a.实现RTC实时时钟功能 b.显示实时时钟界面 c.实现校时功能 d.上机调试,运行,验收 e.实现定时报警功能 四、硬件接口逻辑图

电路连接图

五、程序代码 (1)44binits /* ******************************************************* * NAME : 44BINIT.S * * Version : 10.JAn.2003 * * Description: * * C start up codes * * Configure memory, Initialize ISR ,stacks * * Initialize C-variables * * Fill zeros into zero-initialized C-variables * *******************************************************/

arm机械臂课程设计报告代码

成绩评定表

课程设计任务书

目录 一、题目分析2 二、总体设计 (2) 三、详细设计6 四、实现代码8 五、相关图片20 六、结束语21 七、参考文献 (22) 1、实验题目分析 1.1 问题描述

结合实时时钟,IIC(控制小键盘和数码管等)来做具备定期功能的实时时钟。 1.2功能分析 至少完成以下功能: (1)能显示每秒的时刻 (2)按下功能键能切换显示日期 (3)能设置定时闹钟,定时到产生某种输出 (4)可以扩展考虑加入外部中断,如停止闹钟功能等。 1.3 开发平台及工具介绍 实验器材有: CITK2410开发板,JTAG连接线,RS-232直通连接线 RVDS集成开发环境,超级终端工具, 2、总体设计 2.1 实验基本原理 IIC总线:IIC总线的器件分为主器件和从器件。主器件的功能是启动在总线上传送数据,并产生时钟脉冲,以允许与被寻址的器件进行数据传送。 SCL线为高电平期间,SDA线由高电平向低电平的变化表示起始信号;SCL线为高电平期间,SDA线由低电平向高电平的变化表示终止信号。 I2C总线进行数据传送时,时钟信号

为高电平期间,数据线上的数据必须保持稳定,只有在时钟线上的信号为低电平期间,数据 线上的高电平或低电平状态才允许变化。 超始和停止信号图 数据传送时序图 IIC总线(IICSDA、IICSCL)经过VDD33的上拉后,进入ZLG7290 数码管:实验使用的数码管是广州周立公司单片机发展有限公司自行设计的一款数码管显示驱动及键盘扫描管理芯片。下面是介绍该数码管的特点还有电路图: 1 I2C 串行接口提供键盘中断信号方便与处理器接口 2 可驱动8 位共阴数码管或64 只独立LED 和64 个按键 3 可控扫描位数可控任一数码管闪烁 4 提供数据译码和循环移位段寻址等控制 5 8 个功能键可检测任一键的连击次数 6 无需外接元件即直接驱LED 可扩展驱动电流和驱动电压 7 提供工业级器件多种封装形式PDIP24 SO24 采用24 引脚封装引脚图如图所示其引脚功能分述如下:

相关文档
最新文档