福州大学。
报告书。题目: 基于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占空比。
pwm频率为1k hz:
根据关系式:tbclk=sysclkout/(hspclkdiv*clkdiv)
取sysclkout=60m hz,hspclkdiv=6,clkdiv=1,求得。
tbclk=10m hz。将period设为10k,便得到1k hz 的pwm波。
任务c:用key模块的中断实现温度给定。
任务d:在pwm的周期结束产生的中断中,通过改变比较点cmpa的位置来改变pwm占空比的大小。
任务e:利用cap模块设置3个捕获点捕获pwm的上升沿和下降沿,计算得到pwm波的占空比。
任务f:利用sci模块实现串口通信将温度和占空比上传到上位机。
此外,各模块的配置都与gpio模块有关。
系统原理图:28027 c2000 piccolo launchpad原理图。
4、程序流程---各个模块的流程图。
5、程序**
/ the includes
#include "application/"
/ the defines
/ the globals
/ the functions
void delay(uint32_t time)
//延时函数。
/ end of file
/ the includes
#include "application/"
/ the defines
/ the globals
/ the functions
interrupt void led_pwm_isr(voidpwm的中断服务函数。
if(my_adc
elsepwm_setcmpa(mypwm1,mycmp设定cmpa值。
pwm_clearintflag(mypwm1清零pwm中断标志位。
pie_clearint(mypie,pie_groupnumber_3); 清零pie中断标志位。
mycmp=5000将比较点初值设为5000
interrupt void my_adc_isr(void) /adc中断服务函数。
my_adc=adc_readresult(myadc,adc_resultnumber_0);
/获取adc转换的数字量。
my_adc= adc_gettemperaturec(myadc, my_adc);
/将数字量转换为温度值。
adc_clearintflag(myadc, adc_intnumber_1);
/清除中断标志位。
pie_clearint(mypie,pie_groupnumber_10);
interrupt void key_xint1_isr(void) /按键中断服务函数。
set_temp++;
if(set_temp>40)
pie_clearint(mypie,pie_groupnumber_1);
interrupt void my_cap_isr(void) /cap中断服务函数。
uint32_t capevent1count=0,capevent2count=0,capevent3count=0;
float fpwmduty=0.0;
capevent1count = cap_getcap1(mycap);
capevent2count = cap_getcap2(mycap);
capevent3count = cap_getcap3(mycap);
fpwmduty = float)(capevent2count - capevent1count) /capevent3count - capevent1count); 计算pwm占空比。
fpwmduty=fpwmduty*100;
now_pwm=(int)fpwmduty;
cap_clearint(mycap, cap_int_type_cevt3);
cap_clearint(mycap, cap_int_type_global);
acknowledge this interrupt to receive more interrupts from group 4
pie_clearint(mypie, pie_groupnumber_4);
/redefined in
/ end of file
/*f2802x_
#include "f2802x_component/include/"
#include "f2802x_component/include/"
#include "f2802x_component/include/"
#include "f2802x_component/include/"
#include "f2802x_component/include/"
#include "f2802x_component/include/"
#include "f2802x_component/include/"
#include "f2802x_component/include/"
#include "f2802x_component/include/"
#include "f2802x_component/include/"
/ the includes
#include "user_component/key/"
嵌入式系统设计报告
班级20090612 学号 2009112107 姓名侯金钟。成绩。指导教师 武俊鹏 刘书勇 嵌入式系统硬件开发环境。1 熟悉up net3000实验平台。2.超级终端设置及bios 功能使用。硬件 arm 嵌入式开发平台 用于arm7tdmi 的jtag 器 pc 机pentium100 以。上 ...
嵌入式ARM嵌入式系统设计
摘要 本系统设计了基于arm系统的嵌入式硬件平台,其中主要介绍了系统母版的具体电路实现,其硬件电路已经通过了信号完整性分析。中国 网 关键词 arm 嵌入式系统 中图分类号 tp368.1 文献标识码 a 文章编号 1007 9416 2012 12 0104 01 1 序言 本系统是设计一款基于a...
嵌入式监控系统设计报告
摘要近几年来,数字化医院建设方兴未艾,病房多参监护系统作为数字化医院的重要组成部分之一,其主要作用就是 减少病房医护人员的工作量,实时保存病人生理数据以作病例分析,实时监控病房并及时响应病人呼叫等。本系统以up 2410开发板为主,辅以spce061a单片机 pc为开发平台,实现了具有 无线多参 网...