- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
嵌入式控制系统及应用
实验报告
小组成员:91211020023
1.1 最小系统设计
一、实验目的
(1)熟悉Proteus与Keil for ARM的使用;
(2)掌握Proteus与Keil for ARM联合调试方法;
(3)掌握嵌入式系统最小系统的设计与调试方法;
(4)掌握嵌入式系统的仿真设计技术。
二、实验内容
本次实验利用电路仿真软件Proteus与嵌入式开发环境Keil for ARM进行嵌入式系统的仿真。在Proteus中进行嵌入式系统最小系统的硬件电路设计,并在Keil for ARM中完成最小系统测试程序的编写和编译,最后将编译成的可执行代码装载到嵌入式微处理器中进行电路的仿真运行。
三、预备知识
C语言的基础知识,Proteus与Keil for ARM软件的基本使用方法和设置。
四、实验设备
硬件:PC机(或笔记本电脑)
软件:Windows xp以上操作系统,Proteus 7.8以上版本,Keil for ARM 3.0以上版本。
五、实验步骤
(1)安装Proteus及Keil for ARM 软件
(2)在Proteus中建立嵌入式最小系统电路
图1.1.1 嵌入式最小系统原理图
(3)在Keil for ARM中编写最小系统测试程序
测试程序源代码如下:
#includestdio.h
#include LPC21xx.h
void delay()
{
int i;
int j;
for(i=0;i100;i++)
for(j=0;j1000;j++);
}
int main(void)
{
int i;
IO0PIN=0;
for(i=7;i=10;i++)
{
/*IO0DIR=17|18|19|110|;*/
/*IO0CLR=17|18|19|110|;*/
IO0DIR=1i;
IO0CLR=1i;
delay();
}
IO0DIR=17|18|19|110;
IO0CLR=17|18|19|110;
for(i=10;i=7;i--)
{
IO0SET=1i;
}
}
(4)下载调试
结果记录下图所示。
1.2 串行通信设计
一、实验目的
(1)掌握UART部件的使用与接口扩展方法;
(2)掌握嵌入式系统的仿真设计技术。
二、实验内容
本次实验利用电路仿真软件Proteus与嵌入式开发环境Keil for ARM进行嵌入式系统的仿真。在Proteus中进行嵌入式系统的UART接口硬件电路设计,并在Keil for ARM中完成串行通信程序的编写和编译,最后将编译成的可执行代码装载到嵌入式微处理器中进行电路的仿真运行。
三、预备知识
C语言的基础知识,Proteus与Keil for ARM软件的基本使用方法和设置。
四、实验设备
硬件:PC机(或笔记本电脑)
软件:Windows xp以上操作系统,Proteus 7.8以上版本,Keil for ARM 3.0以上版本。
五、实验步骤
(1)在Proteus中建立嵌入式系统电路
图1.2.1 嵌入式系统原理图
(2)在Keil for ARM中编写系统测试程序
测试程序源代码如下:
#includeLPC21xx.h
#includestdio.h
char string[]={We are students\n};
int send(int ch)
{
if(ch==`\n`)
{
while (!(UOLSR 0x40));
return (UOTHR=ch);
}
void delay(void)
{
unsigned volatile long i;
for(i=0;i400000;i++);
}
void sendstr(char *p)
{
while(*p!=`\0`)
{
send(*p++);
}
}
int main (void)
{
PINSEL0 = 0x0000005;
U0LCR = 0x83;
U0DLL = 122;
U0LCR = 0x03;
I00DIR = 0x000001;
while (1)
{
sendstr(string);
delay();
}
}
2.2 多线程应用程序设计
(1)了解多线程程序设计的基本原理。
(2)学习pthread库函数的使用。
二、实验内容
熟悉几个重要的PTHREAD库函数的使用,掌握共享锁和信号量的使用方法。
进入/arm2410s/exp/basic/02_pthread目录,运行make产生pthread
文档评论(0)