插入c语言的是选插入c++那一栏吗?

1.闪烁_for循环实现

#include<reg51.h>sbit d1=P1^0;void delay();void main()
{   while(1){d1=0;delay();d1=1;delay();}
}void delay()
{unsigned int i,j;for(i=100;i>0;i--)for(j=680;j>0;j--);
}

2.单个发光管来回流动,第个管亮100ms,流动时让蜂鸣器发出“滴滴”声。

//单个发光管来回流动,第个管亮100ms,流动时让蜂鸣器发出“滴滴”声。//为什么我的单片机用P0,D3和D4会单独往复一次?!!#include<reg51.h>
#include<intrins.h>#define uint unsigned int
#define uchar unsigned charsbit beep=P1^5;void delay();void main()
{uint temp=0xfe;uint num;while(1){//beep=0;for(num=7;num>0;num--){P0=temp;temp=_crol_(temp,1);//当P0为0x7f时,没有执行P0=temp,直接跳过delay();}for(num=7;num>0;num--){P0=temp;temp=_cror_(temp,1);//若将P0=temp写在这里的话,P0=0x7f无法显示,则右一一直无法点亮delay();}        }
}void delay()
{uint x,y;for(x=100;x>0;x--)for(y=2000;y>0;y--);
}

3.8个发光管由上至下间隔1s流动,其中每个管亮500ms,灭500ms,亮时蜂鸣器响,灭时关闭蜂鸣器,一直重复下去。

//8个发光管由上至下间隔1s流动,其中每个管亮500ms,灭500ms,亮时蜂鸣器响,灭时关闭蜂鸣器,一直重复下去。
//用intrins.h头文件中的_crol_(unsigned char,unsigned int)函数控制led灯向左移#include<reg51.h>
#include<intrins.h>#define uint unsigned int
#define uchar unsinged charsbit beep=P1^5;void delay();void main()
{uint turnOff=0xff;uint temp=0xfe;while(1){P0=temp;temp=_crol_(temp,1);beep=0;delay();P0=turnOff;beep=1;delay();             }
}void delay()
{uint delay_X,delay_Y;for(delay_X=100;delay_X>0;delay_X--)for(delay_Y=580;delay_Y>0;delay_Y--);
}

4.用8个发光管演示出8位二进制数累加过程。

//用8个发光管演示出8位二进制数累加过程。#include<reg51.h>
#include<intrins.h>#define uint unsigned int
#define uchar unsiged charvoid delay();void main()
{    uint sum=0xff;while(1){P2=sum;sum=sum-1;delay();}
}void delay()
{uint x,y;for(x=100;x>0;x--)for(y=999;y>0;y--);
}

5.间隔300ms先奇数亮再偶数亮,循环三次;一个灯上下循环三次; 两个分别从两边往中间流动三次;再从中间往两边流动三次; 8个全部闪烁3次;关闭发光管,程序停止。

/* ---------------------------------------------------
** 间隔300ms先奇数亮再偶数亮,循环三次;一个灯上下循环三次;
** 两个分别从两边往中间流动三次;再从中间往两边流动三次;
** 8个全部闪烁3次;关闭发光管,程序停止。
----------------------------------------------------*/#include<reg51.h>
#include<intrins.h>#define uint unsigned int
#define uchar unsigned charuint temp1=0xfe;
uint temp2=0xfd;
uint temp3=0xfe;
//uint temp4=0x7f;
//注意 sbit和uint 的区别void delay();void main()
{uint xh1,xh2,xh3,xh4,xh5,xh6,xh7,xh8,xh9;while(1){  //先奇数亮,然后偶数亮,循环三次        for(xh1=3;xh1>0;xh1--){for(xh2=4;xh2>0;xh2--){P0=temp1;temp1=_crol_(temp1,2);delay();}for(xh3=4;xh3>0;xh3--){P0=temp2;temp2=_crol_(temp2,2);delay();}}//一个灯上下循环三次//之前循环写错了for(xh4=3;xh4>0;xh4--){for(xh5=7;xh5>0;xh5--){P0=temp3;temp3=_crol_(temp3,1);delay();}for(xh6=7;xh6>0;xh6--){P0=temp3;temp3=_cror_(temp3,1);delay();}  }  //两个分别从两边往中间流动三次for(xh7=3;xh7>0;xh7--){P0=0x7e;delay();P0=0xbd;delay();P0=0xdb;delay();P0=0xe7;delay();}//再从中间往两边流动三次for(xh8=3;xh8>0;xh8--){P0=0xe7;delay();P0=0xdb;delay();P0=0xbd;delay();P0=0x7e;delay();}//暂时还没想到更好的方法//8个全部闪烁3次for(xh9=3;xh9>0;xh9--){P0=0x00;delay();P0=0xff;delay();} }
}void delay()
{uint x,y;for(x=100;x>0;x--)for(y=3500;y>0;y--);
}

一共是有七题,有些功能是重复的,就不贴了。然后因为我还没学到中断,所以时间控制的不够准确,而且为了便于观察现象时间延时故意加长了。
代码应该能够简化,不过不知道该怎么简化?
代码格式什么的,各位大神有没有好的建议?
多谢。。。

习题答案之郭天祥单片机视频教程(1)相关推荐

  1. 郭天祥单片机视频教程习题答案(一)

    1. 第一个发光管以间隔200ms闪烁 //第一个发光管以间隔200ms闪烁 #include<reg52.h> #define uint unsigned int #define uch ...

  2. 郭天祥单片机视频教学习题答案(一)

    第1讲-学单片机预备知识.如何点亮一个发光管视频习题答案 对照TX-1C单片机学习板原理图写程序 用位操作和总线操作两种方法完成以下题目 1. 熟练建立 KEIL工程 链接: https://wenk ...

  3. 郭天祥单片机编程100例程序及随笔2——数码管编程

    1.两个问题,一个待解决: 1.1数码管的dula,wela,的原理和led1一样吗?单片机为什么凭这个名字就能找到数码管? 初步猜测:是郭天祥在他的51单片机里面焊接定义好的,就是不知道放在别的地方 ...

  4. FPGA/CPLD学习心得体会-送给入门学习的你(后附郭天祥FPGA视频教程)

    FPGA在目前应用领域非常,在目前的单板设计里面,几乎都可以看到它的身影.从简单的逻辑组合,到高端的图像.通信协议处理,从单片逻辑到复杂的ASIC原型验证,从小家电到航天器,都可以看到FPGA应用,它 ...

  5. 郭天祥单片机编程100例程序及随笔3——定时器编程

    1.五个知识点: 1.1设置中断的流程: 1.1.1主函数设置初始化 1.1.2中断服务程序(由用户自己编写),设置要做的事情,但不可以放太多. 1.2主函数的设置(定时器初始化) 举例: void ...

  6. 郭天祥嵌入式开发教程

    1 课程简介                  主要是郭天祥的ARM9嵌入式教程. 2 课程地址 郭天祥ARM9视频教程

  7. 51单片机学习笔记(郭天祥版)(3)——引脚讲解、数码管静态显示、中断系统(外部中断,定时器中断)...

    学习引脚的功能 9引脚 复位管脚,当给2个机器周期(24个时钟振荡周期)的高电平时会复位,单片机正常工作时会给0.5v的低电平 VPD备用电源的输入端,当主电源VCC发生故障降低到某一规定的低电平时, ...

  8. c语言程序设计教程北京邮电大学出版社答案,C语言程序设计教程习题答案~主审郭浩志北京邮电大学出版社.doc...

    C语言程序设计教程习题答案~主审郭浩志北京邮电大学出版社 习题一 1.自然语言,专用工具,部分常用的算法 2.头文件,用户函数说明部分:全局变量定义:主函数:若干用户自己编写的函数.例1.1 3.①C ...

  9. 0.《新概念51单片机C语言教程》(郭天祥)学习笔记

    看到之前的阅读量,有标题党的嫌疑,再接再厉,加油坚持自己的文风,相信会写的越来越好:) 继续更(一个人,一个记事本,一个PDF阅读器,装备全靠打) <新概念51单片机C语言教程>(郭天祥) ...

最新文章

  1. AUC是什么?AUC的的意义是什么?AUC的判断分类器优劣标准是什么?AUC如何计算?
  2. python3 中 布尔 bool 类型转换
  3. oracle表存储表空间,Oracle的存储信息-表空间信息记录
  4. Spring Boot之基于Dubbo和Seata的分布式事务解决方案
  5. [HDU5215]Cycle
  6. Dubbo3.0 简介
  7. App IM 之 环信
  8. struct interface_golang 避坑指南(1)interface 之坑多多 | 文末深圳 Meetup
  9. android sqlcipher 加密,Android 数据库加密 SQLCipher使用方法
  10. 《互联网理财一册通》一一第1章 做好互联网理财前的准备工作
  11. 关于Access的日期比较和空值判断
  12. 2013年全国天线年会参展商名录及观展指南
  13. 6个小白也能看得懂的华为交换机命令,你学会了吗?
  14. 中国高新科技杂志中国高新科技杂志社中国高新科技编辑部2022年第6期目录
  15. OPC通讯测试、OPC测试常见问题解决方案
  16. python画气泡图_用Python把图做的好看点:用Matplotlib做个比较气泡图
  17. (环境搭建+复现)CVE-2020-1472 NetLogon 域内提权漏洞
  18. python软件编程培训
  19. 有道 linux 安装路径,「Linux」- 安装有道词典
  20. Creating orkut style status update div-textbox using jQuery

热门文章

  1. 【C++】Visual Studio教程(十三) -默认键盘快捷方式
  2. Android查看Jpg图片出现颠倒的问题
  3. 基于CAPE-OPEN标准开发化工模拟单元操作模块
  4. 我的Chrome浏览器插件
  5. proteus中仿真51单片系列之--2位数码管程序
  6. java学习常用网站推荐
  7. 【每天一个Python小知识】NumPy中的np.where
  8. 代码质量管理-Sonar 使用手册
  9. EXCEL无格式黏贴
  10. AAA之802.1x认证详解(一)