单片机控制LED灯点亮(C语言).ppt_第1页
单片机控制LED灯点亮(C语言).ppt_第2页
单片机控制LED灯点亮(C语言).ppt_第3页
单片机控制LED灯点亮(C语言).ppt_第4页
单片机控制LED灯点亮(C语言).ppt_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

单片机控制led灯点亮 主要内容 一 点亮板子上的第一个灯D0二 点亮板子上的D0 D2 D4 D6灯 与D1 D3 D5 D7灯交替闪烁三 流水灯 从D0 D7依次点亮 一 点亮板子上的第一个灯D0 1 目标了解单片机的基本设计思路和编程方法 和单片机的最小系统 2 分析利用单片机的一个输入 输出口来控制一盏发光二极管点亮 引脚 1 4个I O口占了32个引脚2 电源和接地又占了2个引脚3 剩下的6个引脚是时钟引脚和控制引脚 硬件说明 使用单片机的P1口来驱动8个LED 发光二极管的阳极接高电平 故P1口为低电平时 就可以驱动其点亮D0与P1 0口是相连的 P1 0用来表示P1口的最低位 本任务中给单片机的P1 0口一个低电平信号即可完成控制 所以 只需给P1 0低电平信号 其他引脚均为高电平 点亮D0灯 D7D6D5D4D3D2D1D011111110从二进制转化为十六进制 0 xfe 源程序 includevoidmain P1 0 xfe 十六进制 是二进制的简短表示形式 十进制中的0 15分别表示为十六进制的0 1 2 3 4 5 6 7 8 9 A B C D E F熟练掌握二进制与十六进制之间的转换 规律 一般把四个二进制数放在一起转换成一个十六进制数 转换时先把二进制数转换成十进制数 再把十进制数转换成十六进制数 二进制和十六进制的转换 如 0001B 1HB表示为二进制 H为十六进制1001B 9H1010B AH00101100 2CH11111110 FEH在C语言编程中是不能用H的 十六进制整常数的前缀为0X或0 x 十六进制整常数 十六进制整常数的前缀为0X或0 x 其数码取值为0 9 A F或a f 以下各数是合法的十六进制整常数 0X2A 十进制为42 0XA0 十进制为160 0XFFFF 十进制为65535 以下各数不是合法的十六进制整常数 5A 无前缀0X 0X3H 含有非十六进制数码 各种进位制的对应关系 Keil的使用 掌握Keil工程的建立和软件的开发 1 启动 Vision Vision2是一个标准的Windows应用程序 双击Keil Vision2图标即可启动 也可以选择 开始 程序 Keil Vision2 命令来启动运行 其主界面如图1 28所示 2 创建一个项目并选择单片机选择 Project 项目 NewProject 新建项目 命令 如图1 29所示 将弹出 GreateNewProject 新建项目 对话框 随后会弹出一个对话框 要求选择单片机的型号 在该对话框中显示了 Vision2的器件数据库 从中可以根据使用的单片机来选择 3 创建一个新的源程序文件 并把这个源文件添加到项目中单击工具栏中的新建文件图标 或选择 File 文件 New 新建 命令 文件操作窗口即可出现新建文件 保存该空白文件 单击工具栏中的保存图标 或选择 File 文件 Save 保存 命令 弹出如图1 32所示的 Saveas 保存为 对话框 在 文件名 文本框中输入欲保存的文件名 保存时注意加上正确的后缀名 单击Target1前面的 号 然后在SourceGroup1上单击鼠标右键 弹出快捷菜单 选择 AddFilestoGroup SourceGroup1 添加文件到项目 命令 弹出如图1 34所示的对话框 选中文件 注意选择文件类型 然后单击 Add 添加 按钮 即可添加选中文件到项目中 4 输入源程序 此时就可以输入源程序了 5 设置目标硬件的工具选项程序编写完成后 还要对项目进行进一步的设置 以满足要求 Output 选项卡如图所示 其中有多个选项 此处选择 CreateHEXFile 复选框用于生成可执行代码文件 该文件可以用编程器写入单片机芯片 文件的扩展名为 HEX 默认情况下该项未被选中 如果要写芯片做硬件实验 就必须选中该项 其余选项均取默认值 不做任何修改 6 编译项目并创建HEX文件可以通过工具栏中的图标直接进行 从左到右的图标分别是 编译 编译连接 全部重建 停止编译和对工程进行设置 对源程序编写之后编译 最终要得到结果 提示0个错误 0个警告 同时还可看到 该程序的内部RAM的使用量 data 8 0 外部RAM的使用量 xdata 0 代码量 code 18 等一些信息 7 将生成的hex文件 通过ISP下载到板子中 请观察现象 源程序 includevoidmain P1 0 xfe C语言复习 Main函数格式 voidmain 特点 无返回值 无参 任何一个C程序有且仅有一个main函数 它是整个程序开始执行的入口 例 voidmain 总程序从这里开始执行 其他语句 C语言 51单片机的头文件 通常有 reg51 hreg52 hmath hctype hstdio hstdlib habsacc h常用有 reg51 hreg52 h 定义特殊功能寄存器和位寄存器 math h 定义常用数学运算 二 点亮板子上的0 2 4 6灯 与1 3 5 7灯交替闪烁 点亮0 2 4 6灯 D7D6D5D4D3D2D1D010101010从二进制转化为十六进制 0 xaa点亮1 3 5 7灯 D7D6D5D4D3D2D1D001010101从二进制转化为十六进制 0 x55 include defineuintunsignedint defineucharunsignedcharvoidmain uinta while 1 P1 0 xaa a 50000 while a P1 0 x55 a 50000 while a 1 宏定义 defineuintunsignedint defineucharunsignedchar define标识符字符串C语言中的例子 definePI3 14159262 函数声明函数声明是指函数的定义在后面 而前面需要对它进行调用 这样就需要预先作声明 一般来说函数的声明只是函数首部加上分号即可 3 数据类型Intsignedint范围是多少 unsignedint范围是多少 char可以表示小整数或者单个字符 当char表示整数时 signedchar的范围是多少 unsignedchar的范围是多少 C 51的数据类型 基本数据类型 类型 符号 关键字 数的表示范围 所占位数 整型 字符型 实型 有 无 signed int 16 32768 32767 signed short 16 32768 32767 signed long 32 2147483648 2147483647 16 unsignedint 0 65535 32 0 4294967295 unsignedlongint unsignedshortint 16 0 65535 有 float 32 3 4e 38 3 4e38 有 double 64 1 7e 308 1 7e308 有 char 8 128 127 无 unsignedchar 8 0 255 4 While 表达式 语句 内部也可为空 特点 先判断表达式 后执行语句 原则 若表达式不是0 即为真 那么执行语句 否则跳出while语句 While 1 while 1 就是while true 条件判断直接为true 循环永远不会退出 也称为死循环 5 delay 函数是一个延时函数 两个for语句 构成了循环嵌套 用数数的方式消耗时间产生延迟效果 具体延迟多久取决于若干因素 以后再讨论 voiddelay uintx y for x 100 x 0 x for y 600 y 0 y 注意 第二个for循环体是一条空语句 5 for循环for 表达式1 表达式2 表达式3 语句 内部可为空 执行过程 1 求解一次表达式1 2 求解表达式2 若其值为真 非0即为真 则执行for中语句 然后执行第3步 否则结束for语句 直接跳出 不再执行第3步 3 求解表达式3 4 跳到第2步重复执行 三 流水灯 从D0 D7依次点亮 分析 D0亮0 xfe11111110D1亮0 xfd11111101D2亮0 xfb11111011D3亮0 xf711110111D4亮0 xef11101111D5亮0 xdf11011111D6亮0 xbf10111111D7亮0 x7f01111111 软件分析 1 依次把这8个值赋给P1口 延时一段程序 voidmain uinta while 1 P1 0 xfe a 50000 while a P1 0 xfd a 50000 while a P1 0 xfb a 50000 while a P1 0 xf7 a 50000 while a P1 0 xef a 50000 while a P1 0 xdf a 50000 while a P1 0 xbf a 50000 while a P1 0 x7f a 50000 while a 2 将0 xfe赋给P1口 然后使用移位函数来改变P1口的值 达到流水灯的效果移位函数 crol cror 将char型变量循环向左 右 移动指定位数后返回 crol cror c51中的intrins h库函数 include include defineuintunsignedint defineucharunsignedcharuchartemp voiddelay ui

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论