单片机C语言入门教程

上传人:c** 文档编号:298844293 上传时间:2022-05-26 格式:DOCX 页数:4 大小:17.11KB
返回 下载 相关 举报
单片机C语言入门教程_第1页
第1页 / 共4页
单片机C语言入门教程_第2页
第2页 / 共4页
单片机C语言入门教程_第3页
第3页 / 共4页
单片机C语言入门教程_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《单片机C语言入门教程》由会员分享,可在线阅读,更多相关《单片机C语言入门教程(4页珍藏版)》请在金锄头文库上搜索。

1、本文格式为Word版,下载可任意编辑单片机C语言入门教程 单片机C语言入门教程 来源:21ic : 关键字:单片机 C语言 入门教程 学习一种编程语言,最重要的是建立一个练习环境,边学边练才能学好。Keil软件是目前最流行开发80C51系列单片机的软件,Keil供给了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(?Vision)将这些部份组合在一起。 学习之前请先安装KEILC51软件,在学会使用汇编语言后,学习C语言编程是一件对比轻易的事,我们将通过一系列的实例介绍C语言编程的方法。图1-1所示电路图使用89c51单片机作为主芯片,

2、这种单片机性属于80C51系列,其内部有8K的FLASH ROM,可以反复擦写,分外适于做测验。89c51的P1引脚上接8个发光二极管,P3.2P3.4引脚上接4个按钮开关,我们的任务是让接在P1引脚上的发光二极管按要求发光。 1 简朴的C程序介绍 例1-1: 让接在P1.0引脚上的LED发光。 /* 单灯闪烁程序 */ #include 这一句是将51的常用端口,内部寄放器等的定义文件包含进这段程序 sbit P1_0=P10; void main() P1_1=0; 这个程序的作用是让接在P1.0引脚上的LED点亮。下面来分析一下这个C语言程序包含了哪些信息。 1)文件包含处理。 程序的第

3、一行是一个文件包含处理。 所谓文件包含是指一个文件将另外一个文件的内容全部包含进来,所以这里的程序虽然只有4行,但C编译器在处理的时候却要处理几十或几百行。这里程序中包含REG51.h文件的目的是为了要使用P1这个符号,即通知C编译器,程序中所写的P1是指80C51单片机的P1端口而不是其它变量。这是如何做到的呢? 开启reg51.h可以看到这样的一些内容: /*-REG51.H Header file for generic 80C51 and 80C31 microcontroller. Copyright (c) 1988-2022 Keil Elektronik GmbH and Ke

4、il Software, Inc. All rights reserved. -*/ /* BYTE Register */ sfr P0 = 0x80; sfr P1 = 0x90; sfr P2 = 0xA0; sfr P3 = 0xB0; sfr PSW = 0xD0; sfr ACC = 0xE0; sfr B = 0xF0; sfr SP = 0x81; sfr DPL = 0x82; sfr DPH = 0x83; sfr PCON = 0x87; sfr TCON = 0x88; sfr TMOD = 0x89; sfr TL0 = 0x8A; sfr TL1 = 0x8B; s

5、fr TH0 = 0x8C; sfr TH1 = 0x8D; sfr IE = 0xA8; sfr IP = 0xB8; sfr SCON = 0x98; sfr SBUF = 0x99; /* BIT Register */ /* PSW */ sbit CY = 0xD7; sbit AC = 0xD6; sbit F0 = 0xD5; sbit RS1 = 0xD4; sbit RS0 = 0xD3; sbit OV = 0xD2; sbit P = 0xD0; /* TCON */ sbit TF1 = 0x8F; sbit TR1 = 0x8E; sbit TF0 = 0x8D; s

6、bit TR0 = 0x8C; sbit IE1 = 0x8B; sbit IT1 = 0x8A; sbit IE0 = 0x89; sbit IT0 = 0x88; /* IE */ sbit EA = 0xAF; sbit ES = 0xAC; sbit ET1 = 0xAB; sbit EX1 = 0xAA; sbit ET0 = 0xA9; sbit EX0 = 0xA8; /* IP */ sbit PS = 0xBC; sbit PT1 = 0xBB; sbit PX1 = 0xBA; sbit PT0 = 0xB9; sbit PX0 = 0xB8; /* P3 */ sbit

7、RD = 0xB7; sbit WR = 0xB6; sbit T1 = 0xB5; sbit T0 = 0xB4; sbit INT1 = 0xB3; sbit INT0 = 0xB2; sbit TXD = 0xB1; sbit RXD = 0xB0; /* SCON */ sbit SM0 = 0x9F; sbit SM1 = 0x9E; sbit SM2 = 0x9D; sbit REN = 0x9C; sbit TB8 = 0x9B; sbit RB8 = 0x9A; sbit TI = 0x99; sbit RI = 0x98; 熟谙80C51内部布局的读者不难看出,这里都是一些符号的定义,即规定符号名与地址的对应关系。留神其中有 sfr P1 = 0x90; 这样的一行(上文中用黑体表示),即定义P1与地址0x90对应,P1口的地址就是0x90(0x90是C语言中十六进制数的写法,相当于汇编语言中写90H)。 从这里还可以看到一个频繁展现的词:sfr sfr并标准C语言的关键字,而是Keil为能直接访问80C51中的SFR而供给了一个新的关键词,其用法是: 4

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 大杂烩/其它

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