版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、电路图用张毅刚版教材里给的图!1、流水灯#include<reg52.h>#include<intrins.h>void delay() unsigned char i,j; for(i=0;i<255;i+) for(j=0;j<255;j+);void main() P2=0xfe; while(1) P2=_crol_(P2,1); delay(); 2、 单个外部中断#include<reg52.h>#include<intrins.h>void delay(unsigned char delay_time) unsigned
2、 int i,j; for(i=0;i<=delay_time;i+) for(j=0;j<=100;j+);void init_tx() EA=1; EX0=1; IT0=0;void main() P1=0x00; init_tx(); delay(200); while(1) P1=P1;delay(200); void tx0() interrupt 0 P1=0xfe; while(!INT0) P1=_crol_(P1,1);delay(200); P1=0xff;3、 定时器#include<reg52.h>unsigned char t=20;sbit
3、button=P32;sbit yellowled=P10; /*定义接口*/void main() TMOD=0x01; /*选择中断方式*/ EA=1; ET0=1; TH0=0x3c; TL0=0x0b; while(button=0) TR0=1; yellowled=1;void tx() interrupt 1 TH0=0x3c; TL0=0xb0; t-; if(t=0) yellowled=yellowled; t=20; 4、 双机串行通信#include<reg51.h>#define uchar unsigned char#define uint unsign
4、ed int#defineoutk P1#define out1 P0#define out2 P2uchar code seg=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff;uchar key,send,rec;uchar scan(void);void delay(unit);void main(void) TMOD=0X20; /*设置定时器T1为方式2*/ TH1=0XF2; /*给定时器T1赋初值*/ TH1=0XF2; TR1=1; /*接通定时器T1*/ SCON=0X50; /*串行口方式1,REN=1允许接收*/
5、 PCON=0X00; /* SMOD=0*/ EA=1; ES=1; EX1=1; EX0=1; while(1) outk=0x07; out1=segsend; out2=segrec; uchar scan(void) uchar k=10,m,n,in; delay(10); outk=0x07; if(outk&0x07)!=0x07) for(m=0;m<3;m+) outk=(0x01<<(m+3); for(n=0;n<3;n+) in=outk; in=in>>n; if(in&0x01)=0) if(in&0x0
6、1)=0) k=n+m*3;break; if(k!=10)break; return(k);void delay(uint j) uchar i; for(;j>0;j-) i=250; while(-i); i=249; while(-i); void ext0()interrupt 0 EX0=0; key=scan(); if(key!=10)send=key+1; EX0=1;void ext1()interrupt 2 ES=0; SBUF=send; while(!TI); TI=0; ES=1;void com()interrupt 4 RI=0; rec=SBUF;5、
7、单片机与PC串行通信#include <reg51.h>void send(unsigned char dat)SBUF=dat;while(TI=0);TI=0;void init_tx()EA=1;EX0=1;void delay(void)unsigned char m,n;for(m=0;m<250;m+)for(n=0;n<250;n+);void main(void)init_tx();TMOD=0x20;SCON=0x40;PCON=0x00;TH1=0xfd;TL1=0xfd;TR1=1;while(1);void tx0() interrupt 0un
8、signed char i=0;send(0x01); delay();i+;6、扩展82c55并行IO接口#include<reg51.h>#include<absacc.h>#define uchar unsigned char#define uint unsigned intsbit rst_8255=P35;#define con_8255 XBYTE0x7003 /*0x7003为82C55的控制寄存器地址*/#define pa_8255 XBYTE0x7000 /*以下定义pa、pb的端口地址*/#define pb_8255 XBYTE0x7001voi
9、d reset_8255(void);void delay(uint);void main(void) uchar temp; rst_8255=1; /*复位*/ delay(1); rst_8255=0; con_8255=0x82; while(1) temp=pb_8255; /*锁存*/ pa_8255=temp; void delay(uint j) /*延时函数*/ uchar i;for(;j>0;j-) i=250; while(-i); i=249; while(-i);7、 矩阵键盘#include<reg51.h>unsigned char code
10、table=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e;void delay() unsigned char i,j; (延时) for(i=0;i<=25;i+) for(j=0;j<=25;j+);unsigned char key_scan() unsigned char key0,key1; unsigned char key_num=0; P1=0x0f; 先将p1.0P1.3置高 key0=P1; if(key0!=0x0f) 如果P1.4P1.7不全为1
11、,可能有键按下 delay(); key0=P1; if(key0!=0x0f) P1=0xf0; key1=P1; if(key0=0x0e) switch(key1) case 0xe0: key_num=0;break; case 0xd0: key_num=1;break; case 0xb0: key_num=2;break; case 0x70: key_num=3;break; default: key_num=0;break; else if(key0=0x0d) switch(key1) case 0xe0: key_num=4;break; case 0xd0: key_n
12、um=5;break; (处理5号键) case 0xb0: key_num=6;break; case 0x70: key_num=7;break; default: key_num=0;break; (无效按键,如多个键同时按下) else if(key0=0x0b) switch(key1) case 0xe0: key_num=8;break; case 0xd0: key_num=9;break; case 0xb0: key_num=10;break; case 0x70: key_num=11;break; default: key_num=0;break; else if(ke
13、y0=0x07) switch(key1) case 0xe0: key_num=12;break; case 0xd0: key_num=13;break; case 0xb0: key_num=14;break; case 0x70: key_num=15;break; default: key_num=0;break; return key_num;void main() unsigned char key_num;dokey_num=key_scan();P2=tablekey_num;while(1); 8、1602液晶显示#include<reg51.h>#includ
14、e<intrins.h>#define uchar unsigned char#define uint unsigned int#define out P0sbit RS=P20;sbit RW=P21;sbit E=P22;void lcd_initial(void);void check_busy(void);void write_command(uchar com);void write_data(uchar dat);void string(uchar ad,uchar *s);void lcd_test(void);void delay(uint);void main(v
15、oid) lcd_initial();while(1) string(0x82,"Hello Welcome"); string(0xC2,"To China"); delay(100); write_command(0x01); delay(100);void delay(uint j) uchar i=250; for(;j>0;j-) while(-i); i=249; while(-i); i=250; void check_busy(void) uchar dt;do dt=0xff; E=0; RS=0; RW=1; E=1; dt=o
16、ut;while(dt&0x80);E=0;void write_command(uchar com) check_busy();E=0;RS=0;RW=0;out=com;E=1;_nop_();E=0;delay(1);void write_data(uchar dat) check_busy();E=0;RS=1;RW=0;out=dat;E=1;_nop_();E=0;delay(1);void lcd_initial(void) write_command(0x3c);write_command(0x0C);write_command(0x14);write_command(
17、0x01);delay(1);void string(uchar ad,uchar *s) write_command(ad);while(*s>0) write_data(*s+); delay(100);9、DA转换#include<reg51.h>#define uchar unsigned char#define uint unsigned int#define out P1sbit DAC_cs=P20;sbit DAC_wr=P21;void main(void) uchar temp,i=255; while(1) out=temp; DAC_cs=0; /*片选端,芯片被选中*/ DAC_wr=0; /*选通,并被锁存*/ DAC_cs=1; /*以下开始转换*/ DAC_wr=1; temp+; while(-i); /*延时函数!,老师帮改的*/ 10、AD转换#include<reg51.h>#define uchar unsigned char#define uint unsigned int#define LED P
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2023年毕节市七星关区纪委区监委所属事业单位考调笔试真题
- 2024年福建客运资格证应用能力试题
- 2024年江西客运从业资格证考题
- 2024年吉林客运从业资格证考试题库模拟考试
- 2024年潍坊道路旅客运输考卷
- 2024年邢台道路旅客运输资格证考试
- 2024年辽阳客运资格证考试题库下载
- 2024年南京客运从业资格考试题
- 旅游路线规划行业竞争格局与投资战略研究咨询报告
- 警卫服务行业分析及未来五至十年行业发展报告
- 2024年河南省科协直属事业单位河南省科技馆招聘20人历年(高频重点提升专题训练)共500题附带答案详解
- HY/T 0401-2024走航式温盐深剖面测量仪海上试验方法
- 2024-2030年中国家用空调行业营销动态与竞争趋势预测研究报告
- 班组激励承包
- 信号工模拟试题+答案
- 2024轨道交通绝缘配合第1部分:基本要求电工电子设备的电气间隙和爬电距离
- DL-T5161.10-2018电气装置安装工程质量检验及评定规程第10部分:66kV及以下架空电力线路施工质量检验
- DB11-T 1764.21-2022 用水定额 第21部分:屠宰及肉制品加工
- 医疗废物管理台账模板
- 幼儿园一等奖公开课:小班绘本阅读《小蓝和小黄》动画版课件
- 代建工程作业指南
评论
0/150
提交评论