单片机C语言程序设计代码和仿真图

上传人:飞*** 文档编号:5366042 上传时间:2017-08-30 格式:DOC 页数:75 大小:1.96MB
返回 下载 相关 举报
单片机C语言程序设计代码和仿真图_第1页
第1页 / 共75页
单片机C语言程序设计代码和仿真图_第2页
第2页 / 共75页
单片机C语言程序设计代码和仿真图_第3页
第3页 / 共75页
单片机C语言程序设计代码和仿真图_第4页
第4页 / 共75页
单片机C语言程序设计代码和仿真图_第5页
第5页 / 共75页
点击查看更多>>
资源描述

《单片机C语言程序设计代码和仿真图》由会员分享,可在线阅读,更多相关《单片机C语言程序设计代码和仿真图(75页珍藏版)》请在金锄头文库上搜索。

1、单片机 C 语言程序设计实训 100 例-基于 8051 和 PROTEUS 仿真案例1单片机 C 语言程序设计实训 100 例 基于 8051+Proteus 仿真案例第 01 篇 基础程序设计01 闪烁的 LED/* 名称:闪烁的 LED说明:LED 按设定的时间间隔闪烁*/#include#define uchar unsigned char#define uint unsigned intsbit LED=P10;/延时void DelayMS(uint x)uchar i;while(x-)for(i=0;i#include#define uchar unsigned char#de

2、fine uint unsigned int/延时单片机 C 语言程序设计实训 100 例-基于 8051 和 PROTEUS 仿真案例2void DelayMS(uint x)uchar i;while(x-)for(i=0;i#include#define uchar unsigned char#define uint unsigned int/延时void DelayMS(uint x)uchar i;while(x-)for(i=0;i#define uchar unsigned char#define uint unsigned intuchar code Pattern_P0=0x

3、fc,0xf9,0xf3,0xe7,0xcf,0x9f,0x3f,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7,0xdb,0xbd,0x7e,0xbd,0xdb,0xe7,0xff,0xe7,0xc3,0x81,0x00,0x81,0xc3,0xe7,0xff,0xaa,0x55,0x18,0xff,0xf0,0x0f,0x00,0xff,0xf8,0xf1,0xe3,0xc7,0x8f,0x1f,0x3f,0x7f,0x7f,0x3f,0x1f,0x8f,0xc7,0xe3,0xf1,0xf8,0xff,0x00,0x00,0xff,0x

4、ff,0x0f,0xf0,0xff,0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,0xfe,0xfc,0xf8,0xf0,0xe0,0xc0,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x

5、00,0x80,0xc0,0xe0,0xf0,0xf8,0xfc,0xfe,0x00,0xff,0x00,0xff,0x00,0xff,0x00,0xff;uchar code Pattern_P2=0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xfc,0xf9,0xf3,0xe7,0xcf,0x9f,0x3f,0xff,0xe7,0xdb,0xbd,0x7e,0xbd,0xdb,0xe7,0xff,0xe7,0xc3,0x81,0x00,0x81,0xc3,0xe7,0xff,0xaa,0x55,0x18,0xff,0xf0,0x0f,0x00,0xff,

6、0xf8,0xf1,0xe3,0xc7,0x8f,0x1f,0x3f,0x7f,0x7f,0x3f,0x1f,0x8f,0xc7,0xe3,0xf1,0xf8,0xff,0x00,0x00,0xff,0xff,0x0f,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,

7、0xff,0xff,0xff,0xff,0xfe,0xfc,0xf8,0xf0,0xe0,0xc0,0x80,0x00,0x00,0x80,0xc0,0xe0,0xf0,0xf8,0xfc,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0xff,0x00,0xff,0x00,0xff,0x00,0xff;/延时单片机 C 语言程序设计实训 100 例-基于 8051 和 PROTEUS 仿真案例4void DelayMS(uint x)uchar i;while(x-)for(i=0;i#define uchar unsigned char

8、#define uint unsigned intsbit RED_A=P00; /东西向灯sbit YELLOW_A=P01;sbit GREEN_A=P02;sbit RED_B=P03; /南北向灯sbit YELLOW_B=P04;sbit GREEN_B=P05;uchar Flash_Count=0,Operation_Type=1; /闪烁次数,操作类型变量/延时void DelayMS(uint x)uchar i;单片机 C 语言程序设计实训 100 例-基于 8051 和 PROTEUS 仿真案例5while(x-) for(i=0;i单片机 C 语言程序设计实训 100

9、例-基于 8051 和 PROTEUS 仿真案例6#include#define uchar unsigned char#define uint unsigned intuchar code DSY_CODE=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff;/延时void DelayMS(uint x)uchar t;while(x-) for(t=0;t#include#define uchar unsigned char#define uint unsigned intuchar code DSY_CODE=0xc0,0xf9,

10、0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90;/延时void DelayMS(uint x)uchar t;while(x-) for(t=0;t#include#define uchar unsigned char#define uint unsigned intuchar code DSY_CODE=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90;/延时void DelayMS(uint x)uchar t;while(x-) for(t=0;t#define uchar unsigned char#de

11、fine uint unsigned int/段码表uchar code DSY_CODE=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90;/位码表uchar code DSY_IDX=0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80;/延时void DelayMS(uint x)uchar t;while(x-) for(t=0;t#include#define uchar unsigned char#define uint unsigned int/段码表uchar code DSY_CODE=0xc0,0x

12、f9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff;/下面数组看作环形队列,显示从某个数开始的 8 个数( 10 表示黑屏)uchar Num=10,10,10,10,10,10,10,10,2,9,8;/延时void DelayMS(uint x)uchar t;while(x-) for(t=0;t#include#define uchar unsigned char#define uint unsigned int/延时void DelayMS(uint x)uchar i;while(x-) for(i=0;i#define uchar un

13、signed char#define uint unsigned intsbit LED1=P00;sbit LED2=P01;sbit LED3=P02;sbit LED4=P03;sbit K1=P10;sbit K2=P11;sbit K3=P12;sbit K4=P13;/延时void DelayMS(uint x)uchar i;while(x-) for(i=0;i#define uchar unsigned char#define uint unsigned int/延时void DelayMS(uint x)uchar i;while(x-) for(i=0;i4;k=0;/检

14、查 1 所在位置,累加获取按键号 kwhile(Key_State!=0)k+;Key_State=1;/根据按键号 k 进行 4 种处理switch(k)case 1: if(P0=0x00) P0=0xff;P0#define uchar unsigned char#define uint unsigned int/段码uchar code DSY_CODE=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff;/位码uchar code DSY_Index=0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x0

15、1;/待显示到各数码管的数字缓冲(开始仅在 0 位显示 0,其他黑屏)uchar Display_Buffer=0,10,10,10,10,10,10,10;/延时void DelayMS(uint x)uchar i;while(x-) for(i=0;i8) Key_Counts=8;Display_BufferKey_Counts-1=Key_Counts;break;case 0xfd: if(Key_Counts0)Display_Buffer-Key_Counts=10;break;case 0xfb: Display_Buffer0=0;for(i=1;i#include#define uchar unsigned char#define uint unsigned int/段码uchar code DSY_CODE=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff;/待显示的 3 位缓冲uchar Num_Buffer=0,0,0;/按键代码,按键计数uchar Key_Code,Key_Counts=0;/延时void DelayMS(uint x)单片机 C 语言程序设计实训 100 例-基于 8051 和 PROTEUS 仿真案例15uchar i;while(x-) for(i=0

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 其它文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号