"单片机经典小试验:闪烁灯、模拟开关灯、广告灯 · 汇编语言·c语言"
需积分: 10 85 浏览量
更新于2024-01-16
收藏 1.99MB DOC 举报
#include <REG51.H>
sbit LED = P1^0;
void main()
{
while(1) //无限循环
{
LED = 0; //点亮LED
delay(1000); //延时函数
LED = 1; //熄灭LED
delay(1000); //延时函数
}
}
void delay(unsigned int i) //延时程序
{
unsigned int j,k;
for(i;i>0;i--)
{
for(j=8;j>0;j--)
for(k=8;k>0;k--);
}
}
2. 模拟开关灯
1. 实验任务
实现利用 P1.0 端口接发光二极管 L1 的模拟开关灯。
2. 电路原理图
图 4.1.2 所示的是模拟开关灯的电路原理图。
3. 系统板上硬件连线
把“单片机系统”区域中的 P1.0 端口用导线连接到“八路发光二极管指示模块”区域中的 L1 端口上。
4. 程序设计内容
程序设计的内容如下:
void main()
{
while(1) //无限循环
{
LED = 0; //点亮LED
delay(1000); //延时函数
LED = 1; //熄灭LED
delay(1000); //延时函数
}
}
void delay(unsigned int i) //延时程序
{
unsigned int j,k;
for(i;i>0;i--)
{
for(j=8;j>0;j--)
for(k=8;k>0;k--);
}
}
3. 广告灯的左移右移
1. 实验任务
实现利用 P1.0 端口接发光二极管 L1 的左移右移。
2. 电路原理图
图 4.1.3 所示的是广告灯的左移右移的电路原理图。
3. 系统板上硬件连线
把“单片机系统”区域中的 P1.0 端口用导线连接到“八路发光二极管指示模块”区域中的 L1 端口上。
4. 程序设计内容
程序设计的内容如下:
void main()
{
while(1) //无限循环
{
LED = 0; //点亮LED
delay(1000); //延时函数
LED = 1; //熄灭LED
delay(1000); //延时函数
}
}
void delay(unsigned int i) //延时程序
{
unsigned int j,k;
for(i;i>0;i--)
{
for(j=8;j>0;j--)
for(k=8;k>0;k--);
}
}
在这些小试验中,使用了单片机系统,并且结合了汇编语言和C语言进行程序设计。实验中设计了闪烁灯、模拟开关灯和广告灯的左移右移的功能,并给出了电路原理图和系统板上硬件连线的具体说明。同时,还对延时程序的设计方法进行了详细介绍,以及相关的程序设计内容。这些小试验不仅仅是对单片机系统的基本操作和功能进行了展示,同时也展现了汇编语言和C语言在单片机系统中的应用。这些实验不仅具有教学意义,同时也对单片机和程序设计有所启发和帮助。
2010-03-27 上传
2009-11-05 上传
2009-02-26 上传
2018-01-23 上传
zhangmingshou
- 粉丝: 1
- 资源: 9
最新资源
- 火炬连体网络在MNIST的2D嵌入实现示例
- Angular插件增强Application Insights JavaScript SDK功能
- 实时三维重建:InfiniTAM的ros驱动应用
- Spring与Mybatis整合的配置与实践
- Vozy前端技术测试深入体验与模板参考
- React应用实现语音转文字功能介绍
- PHPMailer-6.6.4: PHP邮件收发类库的详细介绍
- Felineboard:为猫主人设计的交互式仪表板
- PGRFileManager:功能强大的开源Ajax文件管理器
- Pytest-Html定制测试报告与源代码封装教程
- Angular开发与部署指南:从创建到测试
- BASIC-BINARY-IPC系统:进程间通信的非阻塞接口
- LTK3D: Common Lisp中的基础3D图形实现
- Timer-Counter-Lister:官方源代码及更新发布
- Galaxia REST API:面向地球问题的解决方案
- Node.js模块:随机动物实例教程与源码解析