- 1、本文档共44页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第9章 80C51的C语言程序设计 9.1 单片机C语言概述 采用C51的优点 9.2 C51的数据类型与运算 C51的存储器类型 9.3 C51流程控制语句 条件语句 开关语句 9.4 C51的指针类型 9.5 C51的函数 9.6 C51编程实例 【例10-1】单片机应用系统中,外中断0引脚接一个开关,并行口线P1.0接一个发光二级管。要求:开关闭合一次,发光二极管的状态改变一次。试编写程序 #include “reg51.h” #include “intrins.h” sbit P10=P1^0; void delay(void) {int a = 5000; while(a - - )_nop_( ); } void int_srv(void)interrupt 0 {delay( ); if(INT0 = =0){P10 = ! P10;while(INT0 = =0);} } void main() { P10 = 0; EA = 1; EX0 = 1; while(1); } 定时计数器编程示例 【例10-2】 利用定时/计数器T0的方式1,产生10ms的定时,并使P1.0引脚上输出周期为20ms的方波,采用中断方式,设系统时钟频率为12 MHz。 1、计算计数初值X: N=t/ Tcy =10×10-3/1×10-6=10000 计数器初值应为-10000。即应将 -(10000/256)送入TH0中,-(10000%256)送入TL0中。 2、求T0的方式控制字TMOD: M1M0=01,GATE=0,C/T=0,可取方式控制字为01H 3、程序清单(见下页) #include “reg51.h” sbit P10 = P1^0; void timer0(void)interrupt 1 { P10 = ! P10; TH0 = -(10000/256); TL0 = -(10000%256); } void main(void) { TMOD = 0x01; P10 = 0; TH0 = -(10000/256); TL0 = -(10000%256); EA = 1; ET0 = 1; TR0 = 1; while(1); } 9.6.2 80C51扩展资源的编程 通用并行口编程示例 【例10-3】用81C55作为微型打印机与单片机间的接口电路。 #include “reg51.h” #include “absacc.h” /*含有对XBYTE等绝对地址访问宏的定义*/ #define uchar unsigned char #define COMD8155 XBYTE[0x7f00] #define PA8155 XBYTE[0x7f01] #define PB8155 XBYTE[0x7f02] #define PC8155 XBYTE[0x7f03] sbit BUSY = P3^3; uchar code tab[17] = {0xb8,0xdf,0xbd,0xcc,0x20, 0xb3,0xf6,0xb0,0xe6,0xc9,0xe7,0x20, 0x32,0x30,0x30,0x38,0x0a};/*高教 出版社 2008*/ uchar t1 = 17; void ptr(uchar d) /*打印字符函数*/ { PA8155 = d; PC8155 = 0x00; /*产生选通脉冲*/ PC8155 = 0x01; while(BUSY); } void main(void) { COMD8155 = 0x0f;/*送命令字*/ prt(0x1c); /*送中文打印方式命令字高字节*/ prt(0x26); /*送中文打印方式命令字低字节*/ EA = 1; EX1 = 1; while(1); } void int1(void)interrupt 2 using 1 { uchar i; EA = 0; for(i = 0;i t1;i ++)prt(tab[i]); EA = 1; } A/D转换接口编程示例 【例10-4】 ADC0809与单片机的接口电路如图。 单片机C语言概述 9.1 C51的数据类型与运算 9.2 C51流程控制语句 9.3 C51的指针类型 9.4 C51的函数 9.5 C51编程实例 9.6 9.1.1 C51程序开发过程 编译器能自动完成变量的存储单元的分配 对常用功能模块和算法编制相应的函数,方便移植 C语言具有良好的可读性、可移植性和基
您可能关注的文档
- 12-2高频开关电源工作原理要点分析.ppt
- 12-3高效率开关电源设计2要点分析.ppt
- 12ERP选型要点分析.ppt
- 12-PTN产品故障维护指导要点分析.ppt
- 12-U8V11.1新版功能介绍-UAP和报表要点分析.ppt
- 12变压器保护要点分析.ppt
- 12传感器与检测要点分析.ppt
- 12大类95种地名普查登记表及其填写说明(修改二稿)要点分析.doc
- 12邓小平理论要点分析.ppt
- 12第3章MOSFET要点分析.ppt
- 半导体材料性能提升技术突破与应用案例分析报告.docx
- 半导体设备国产化政策支持下的关键技术突破与应用前景报告.docx
- 剧本杀市场2025年区域扩张策略研究报告.docx
- 剧本杀行业2025人才培训体系构建中的市场需求与供给分析.docx
- 剧本杀行业2025年人才培训行业人才培养模式创新与探索.docx
- 剧本杀行业2025年内容创作人才需求报告.docx
- 剧本杀行业2025年区域市场区域剧本市场消费者满意度与市场竞争力研究报告.docx
- 剧本杀市场2025年区域竞争态势下的区域合作策略分析报告.docx
- 剧本杀行业2025人才培训与行业人才培养模式创新.docx
- 剧本杀行业剧本创作人才心理素质培养报告.docx
最近下载
- T_HNTI 030—2020_茶树种质资源考察收集技术规范.pdf VIP
- 报关原理与实务(第二版)(第5章)1进出口货物报关单填制.ppt VIP
- 2025年滨州市中考英语试题卷(含答案逐题解析).docx
- 基于能力培养的人工智能课程体系设计.docx
- Q/GDW1827-2013三相智能电能表技术规范.pdf VIP
- 国家中医药管理局发布的406种中医优势病种诊疗方案和临床路径目录.pptx VIP
- 华能国际电力股份有限公司本质安全体系管理手册.doc VIP
- 教育行业AI大模型设计方案【231页WORD】.docx VIP
- 2024医保物价培训.pptx VIP
- 屋顶光伏发电建设项目实施方案.docx
文档评论(0)