基于单片机的光控路灯设计含程序和仿真图.doc

上传人:rrsccc 文档编号:8955575 上传时间:2021-01-27 格式:DOC 页数:25 大小:3.06MB
返回 下载 相关 举报
基于单片机的光控路灯设计含程序和仿真图.doc_第1页
第1页 / 共25页
基于单片机的光控路灯设计含程序和仿真图.doc_第2页
第2页 / 共25页
基于单片机的光控路灯设计含程序和仿真图.doc_第3页
第3页 / 共25页
基于单片机的光控路灯设计含程序和仿真图.doc_第4页
第4页 / 共25页
基于单片机的光控路灯设计含程序和仿真图.doc_第5页
第5页 / 共25页
点击查看更多>>
资源描述

《基于单片机的光控路灯设计含程序和仿真图.doc》由会员分享,可在线阅读,更多相关《基于单片机的光控路灯设计含程序和仿真图.doc(25页珍藏版)》请在三一文库上搜索。

1、机机 电电 工工 程程 系系 课课 程程 设设 计计 报报 告告 题目题目: : 光控路灯 专专 业:业:_应用电子技术应用电子技术_ 班班 级:级:_应电(应电(1 1)班)班_ 学学 号:号:_100601*100601*_ 姓姓 名:名:_潘某某潘某某_ 指导老师:指导老师:_某某某某某某_ 答辩日期:答辩日期:_20122012 年年 6 6 月月 6 6 号号_ 目录目录 一、一、 绪论绪论.3 二、二、 对本课程设计的分析对本课程设计的分析.4 2.1 所需的软硬件.- 4 - 2.2 工作原理.- 4 - 三、三、 主要电路模块的实现方案比较及选择主要电路模块的实现方案比较及选择

2、.5 3.1 光敏电阻感应模块与 AD/DA 转换模块.- 5 - 3.2 IIC 总线模块.- 6 - 3.3 LED 灯与数码管显示模块.- 7 - 3.4 单片机最小系统模块.- 9 - 四、四、 系统电路图系统电路图.10 五、五、 系统的软件设计系统的软件设计.12 六、六、 结论结论.13 七、七、 课程设计过程中遇到的主要问题以及解决办法课程设计过程中遇到的主要问题以及解决办法.13 八、八、 心得体会心得体会.14 九、九、 附件附件.15 黎明职业大学 机电工程系 课程设计 共 25 页 第 - 3 - 页 一、一、绪论绪论 随着社会的发展,路灯已经成为一个城市的照明系统中不

3、可分割的一部分, 在城市照明中发挥着举足轻重的作用,而其所依靠的就是路灯自动化控制系统。 但当前大多采用的是定时的路灯自动化控制系统。其通常都是采用全夜式 开启路灯的自动化控制系统。但因为夏天跟冬天因为天亮与天黑的时差颇大, 使得夏天晚上过早的路灯就开启,早上又过晚的关闭。且世界奇观这么多,偶 尔总会出现点极端的天气状况,会造成白天天过黑、夜晚又如白昼般亮的情况 (如日全食等) ,而路灯又不会自动开启或者关闭,这就使得交通事故的发生概 率增大,路灯在这种情况下失去了其应有的价值和意义也造成能源的白白浪费。 而且现在路灯已经全球基本普及,大到世界有名的大城市,小到小城镇、小乡 村都已经有了路灯,

4、可想而知世界能源在这块的浪费上是多么的巨大。 光控路灯不仅可以解决这类问题,还可以使路灯在有需要的时候自动开启 或者关闭,避免了路灯在不需要的时候自动开启或者关闭。大大的避免了能源 不必要的浪费,对于地球环保和能源的节约,可以起到巨大的作用。一个城市 每年在这块能源的经济支出上对于普通人来说简直是一个天文数字,一个人一 辈子的用电可能都没有城市路灯几天的使用量大。光控路灯如果可以普及化, 不仅可以为城市省下了一大笔的开支,使其可以将节省下的资金投资到更有意 义的地方去,使得城市可以更好、更快的发展。对于世界来说,更是可以取得 巨大的节约能源效果,对于绿色地球的实现做出巨大的贡献。 路灯自动化的

5、控制方式有很多,本系统采用 STC 89C52 和七段数码管显示 器、LED 灯等相关的光电检测、控制、显示设备,来设计智能光控路灯自动化 系统。实现能根据外界光线条件通过 IIC 总线模块、AD/DA 转换模块等的处理 实现控制路灯的自动化开启或者关闭功能。 本设计是以光敏电阻对于外界光线强弱的感应能力为基础进行的路灯自动 化控制系统设计。当光线强度弱到一定程度的时候,路灯就会自动灭掉;当光 线强到一定程度的时候,路灯就会自动开启。本设计以当外界光线强度弱到使 光敏电阻阻值大于等于 200 欧的时候,LED 灯会自动开启;小于 200 欧的时候, 自动关闭。 黎明职业大学 机电工程系 课程设

6、计 共 25 页 第 - 4 - 页 二、二、 对本课程设计的分析对本课程设计的分析 2.1 所需的软硬件所需的软硬件 Proteus 软件、keil 软件、Protel 软件、CH341SER 驱动软件、 STC_ISP_V478 烧写软件、单片机 STC89C52、PCF8591 元件、AT24C02 元件、 74HC573 元件、光敏电阻、发光二极管、七段数码管、电阻、排阻、电容、极 性电容、11.0592M 晶振、电源、学习用的 AT89C52 硬件板、开关等。 2.2 工作原理工作原理 本设计是以光敏电阻可以根据外界光线的强度而改变自身阻值的特性(光 线越强,阻值越小;光线越弱,阻值

7、越大)为基础设计的光控路灯自动化控制 系统。其原理是利用光敏电阻感受外界光线强度并体现在自身阻值的变化上, 然后根据这一阻值的大小来判断外界的光线亮度情况,然后根据所得数据判断 LED 是该亮起还是该灭掉。 该设计主要由六个模块构成:该设计主要由六个模块构成: 1)光敏电阻感应模块 2)AD/DA 转换模块 3)IIC 总线模块 4)LED 灯模块 5)数码管显示模块 6)单片机最小化系统模块 其流程为:光敏电阻读取外界光线的强度,通过 ADC 转换为数据编码传 输给单片机,单片机接收、处理、输出数据使得七段数码管显示出数据(当前 光敏电阻的阻值) 。执行中断,判断该光线的强度是否达到设定的要

8、求(这里设 黎明职业大学 机电工程系 课程设计 共 25 页 第 - 5 - 页 定光敏电阻阻值大于、等于 200 时,LED 灯亮;小于 200 时,LED 灯灭) ,若 达到则 LED 灯亮起;若达不到则 LED 灯灭掉。 其系统框图如下:其系统框图如下: 晶振 电路 路振 光敏 输入 单 片 机 主 要 程 序 数码管 显示输出 LED 灯 亮灭输出 (系统框图) 三、三、 主要电路模块的实现方案比较及选择主要电路模块的实现方案比较及选择 3.1 光敏电阻感应模块与光敏电阻感应模块与 AD/DA 转换模块转换模块 所谓的 AD/DA 转换就是模数/数模转换,该设计中我们涉及到的是 ADC

9、(模数转换) 。 PCF8591 是具有 IIC 总线接口的 8 位 A/D 及 D/A 的转换器,具有 4 路 A/D 输入、1 路 A/D 输出。 这里该设计利用 PCF8591 来实现 ADC 转换数据的功能和连接 IIC 总线的 功能。 其引脚其引脚: 1)ANI0ANI3 为模拟信号输入端,不用时接地。 2)SDA 为 IIC 总线数据输入输出端 3)SDL 为 IIC 总线时钟输入端 4)VREF 为基准电压输入端 其原理为:光敏电阻通过感应外界的光线强度获得数据,通过 PCF8591 的 ANI0 端口(数据输入端口)输入数据,进行 ADC(模数转换)将感应数据转 换成数字数据。

10、 黎明职业大学 机电工程系 课程设计 共 25 页 第 - 6 - 页 AD/DA 模块和光敏电阻感应模块仿真图如下:模块和光敏电阻感应模块仿真图如下: (AD/DA 转换模块与光敏电阻感应模块) 3.2IIC 总线模块总线模块 随着大规模集成电路技术的发展,一个系统所需要的组件越来越多,所以 各组成部分之间便需要总线来实现组件之间数据的传输、控制。而 IIC 总线具 有简单、有效、高性能优点。可以大大简化系统的硬件设计。因此得到广泛应 用。 因为 AT24C02 拥有存储芯片,且可重复擦除数百万次和重复读写的能力。 因此在这里我们便采用 AT24C02 来实现 IIC 总线的 EEPROM

11、功能。 用它来存 储数据并控制数据的输出与接收,实现 IIC 总线的双向串口通信功能。 其引脚其引脚: a)SDA 为串行数据输入输出端,是一个双向漏极开路结构的引脚,这里作为 IIC 总线数据输入输出端。 黎明职业大学 机电工程系 课程设计 共 25 页 第 - 7 - 页 b)SCL 为串行移位时钟控制端,这里作为 IIC 总线时钟输入。写入数据时, 上升沿有效;读出数据时,下降沿有效。 IIC 总线仿真图如下:总线仿真图如下: (IIC 总线模块) 3.3LED 灯与数码管显示模块灯与数码管显示模块 这里我们应用了 74HC573,它包含八路 D 型透明锁存器。适用于面向总线 的三态输出

12、。所有锁存器共用一个锁存使能(LE)端和一个输出使能(OE)端。 利用 74HC573 的锁存功能,使其 LE 端口接单片机。利用单片机编程控制 锁存数据的输入延迟时间,以此来达到控制 LED 灯亮与灭和七段数码管显示数 值的稳定。使得 LED 灯和七段数码管不会一直亮灭亮灭的闪。 其引脚其引脚: a)当 LE 为高电平时,数据从 Dn 输入到锁存器; b)当 LE 为低电平时,锁存器存储 D 输入上的信息一段就绪时间直到 黎明职业大学 机电工程系 课程设计 共 25 页 第 - 8 - 页 LE 的下降沿来临。 c)当 OE 为低电平时,8 个锁存器的内容可被正常输出; d)当 OE 为高电

13、平时,输出进入高阻态。 LED 灯模块和七段数码管模块仿真图如下:灯模块和七段数码管模块仿真图如下: (LED 灯显示模块) 黎明职业大学 机电工程系 课程设计 共 25 页 第 - 9 - 页 (七段数码管显示模块) 3.4 单片机最小系统模块单片机最小系统模块 最小系统是 51 单片机的最基本的组成部分,51 单片机的引脚虽然只有四 十,但它有很多的扩展功能,根据相应的课题设计要求可以设计相应的外围电 路。编写出相应的控制程序便可以跟外围电路很好的组合成功能复杂的系统。 其引脚:其引脚: a)18,19 脚为单片机的晶振引脚;外接 11.0592MHz 的晶振,晶振外围还有 2 个 22p

14、F 的起振电容,可以使单片机更好的起振。 b)9 脚为单片机的复位引脚;当复位引脚出现连续两个机器周期的高点平时, 单片机复位。 c)31 引脚为/EA 引脚;当/EA 接高电平时读取内部储存数据,当内部存储器 读取完成后,单片机自动读取外部存储器;当/EA 接低电平是,单片机只读 取外部存储器, 黎明职业大学 机电工程系 课程设计 共 25 页 第 - 10 - 页 单片机仿真图如下:单片机仿真图如下: (单片机最小系统模块) 四、四、系统电路图系统电路图 该设计是将上述的六个模块拼接一起组成一个系统体系,以实现设计所需 要的功能及光控路灯自动化控制系统。单个模块其功能相对会比较简单、单一,

15、 但将一些模块合理的串接起来就可以实现复杂的功能。当然也可以实现该设计 所需的功能。 其连接方式:其连接方式: 1)光敏电阻通过感应外界的光线强度,将其转换成模拟信号,利用 PCF8591 的 AIN0 模拟信号输入端,将模拟数据输入到 PCF8591。 2)PCF8591 对数据进行 ADC 转换(模数转化)将模拟信号转换成数据信号。 并根据单片机对 SCL(IIC 总线时钟输入端)高低电平的控制,利用 SDA(IIC 总线数据输入输出端)将数据传输至 IIC 总线的缓存元件 AT24C02 使其行使 EEPROM 功能。 3)根据单片机传输给 AT24C02 的 SCL(串行移位时钟控制端

16、)端口的高低电 黎明职业大学 机电工程系 课程设计 共 25 页 第 - 11 - 页 平信号来执行数据的写入或者读出。写入数据时,上升沿有效;读出数据 时,下降沿有效。利用 AT24C02 的 SDA 端来进行数据的双向串口通信。 4)AT24C02 在 SCL 为下降沿的时候通过 SDA 端将缓存的数据传输给单片机。 5)74H573 的 LE 端口接单片机的端口,利用单片机对 LE 的输入电平进行控 制。当 LE 为高电平时,数据从 Dn 输入到锁存器;当 LE 为低电平时,锁 存器存储 D 输入上的信息一段就绪时间直到 LE 的下降沿来临。实现对 LED 灯模块跟七段数码管显示模块的延

17、时时间控制,防止一闪一闪的。 6)单片机通过处理数据,判断 LED 灯模块该亮还是该灭,并输出数据到 LED 灯模块和七段数码管模块所连接的 74HC573 的 Dn 端口。 7)单片机通过对 SCL 和 LE 端口电平的输入来控制各模块间数据的传输、接 收。 其模块连接流程图:其模块连接流程图: 光敏电阻 感应模块 AD/DA 转换 模块 IIC 总线 模块 单片机 模块 数码管 显示模块 LED 灯 模块 电路总图如下:电路总图如下: 黎明职业大学 机电工程系 课程设计 共 25 页 第 - 12 - 页 黎明职业大学 机电工程系 课程设计 共 25 页 第 - 13 - 页 五、五、 系

18、统的软件设计系统的软件设计 启动该程序,接收光敏电阻传输进来的模拟数据,启动 ADC 转换程序将 模拟数据转换成数字数据,并启动 IIC 总线控制程序将数据缓存到 AT24C02 中, 利用单片机编程对数据进行处理和传输的控制,使得整个系统可以很好的相互 协调运行。以达到实现光控路灯自动化控制系统所需要的功能的实现。 对于 IIC 总线, 、AD/DA 转换程序主要利用的是对 PCF8591 和 AT24C02 的 SDA、SCL 端口的输入电平来实现程序的启动和关闭,以此达到控制数据的 输出和输入的功能;通过对 74HC573 的 LE 端口电平的输入控制,来达到 LED 灯和七段数码管显示

19、时间的延迟,防止其一闪一闪的。 详细步骤: 启动该程序,光敏电阻感应外界光线的强度并转换成模拟信号,经过 PCF8591 的 AIN0 数据输入端口输入到 PCF8591 里面,经过 ADC 转换成数据 总线。当 SDA 端口由从高到低一次跳变,IIC 通信开始。SDA 将出具传输到 AT24C02 里面缓存起来。当 SDA 由低到高的一次跳变,IIC 通信结束。将 SDA 接单片机的 P3.2 端口,SCL 接单片机的 P3.3 端口。利用单片机的编程控制 P3.2 和 P3.3 端口高低电平的输入就可以控制 ADC 转换的数据输出延迟时间和 IIC 总线缓存区的数据输入单片机中或者单片机反

20、馈的数据输入到缓存区里面。 单片机的 P0 端口接的是 74HC573,这是一个八路透明锁存器。其端口 LE 接单 片机的 P1.0 跟 P1.1,利用单片机的编程来控制 P1.0 跟 P1.1 端口高低电平的输 出,以控制 74HC573 的数据传输到 LED 灯跟七段数码管的延迟时间,防止 LED 灯和七段数码管的闪动。 当数据显示在数码管中后,中断程序启动,执行判断程序。判断当百位 =2 的时候 LED 灯亮起来;判断2 的时候 LED 灯就灭掉。 程序中还用到了数据的动态读取与发送程序,使得七段数码管的数值可以 随着光敏电阻的感应数据一起不断的变化。 还有延迟函数,可以设定显示函数的延

21、迟时间。 还有 IIC 总线的启动、结束程序。 还有数据的发送接收函数与显示函数。 具体程序设计见附录:具体程序设计见附录:Keil 程序。程序。 黎明职业大学 机电工程系 课程设计 共 25 页 第 - 14 - 页 本系统的软件执行流程图如下:本系统的软件执行流程图如下: 光敏电阻感应 外界光线强度 通过 ADC(模数转换) 转换成数字数据 七段数码管显示出 当前光敏电阻阻值 LED 灯亮LED 灯不亮 启动系统 YESNO 实行判断程序,判断 LED 灯是否开启? 启动 IIC 总线程序 进行数据缓存 单片机启动动态 接收数据程序 中断程序开启 判断程序启动 启动 IIC 总线数据 发送

22、函数 单片机处理数据 启动结束 IIC 总线程 序 单片机发送 处理后的数据 启动显示函数 读取数值 黎明职业大学 机电工程系 课程设计 共 25 页 第 - 15 - 页 六、六、 结论结论 随着社会的发展,路灯已经全球化。几乎只要有人群的地方就会有路灯。 而用于控制路灯的自动化控制系统因为世界有这个需求,所以也出现了好多利 用不同外部因素来实现路灯的自动化控制系统,用来控制路灯的自动亮起或者 自动关闭。 当前大多数地方采用的都是定时的路灯自动化控制系统,晚上路灯一整夜 都开启着,白天全天关闭着。但因为夏天跟冬天因为天亮与天黑的时差颇大, 使得夏天晚上过早的路灯就开启,早上又过晚的关闭。且世

23、界奇观这么多,偶 尔总会出现点极端的天气状况,会造成白天天过黑、夜晚又如白昼般亮的情况 (如日全食等) ,而路灯又不会自动开启或者关闭,使得一个路灯每年都得应为 这个原因而白白浪费了多少能源。而世界路灯总量又是多么的庞大,那每年世 界在路灯这块的能源浪费上课想而知是一个多么庞大的天文数字啊。 光控路灯比时控路灯明显的先进实用、灵活性上更是远远的超越时控路灯。 未来必然会成为世界路灯自动化控制系统的主流。本设计采用的是利用单片机 进行的光控路灯自动化控制系统设计。但本设计所利用的元器件等原材料并不 属于极强耐用型,且设计不够完善,无法随需要而进行修改自己的所想要的光 线强度设定其值,高于等于该值

24、就亮;低于就灭。因此此设计并不适合于现实 中大规模的应用。需要修改一下使用的元器件,改为使用寿命高的元器件进行 设计,并添加设定极限值功能和防瞬间强光灯也会亮的防“虚强光”功能 添加个感应强光的设定时间值即可,强光保持一定时间灯才会灭;反之也一样, 弱光保持一定时间灯才会亮。利用修改后的系统就可以在现实中进行大规模的 应用。 七、七、 课程设计过程中遇到的主要问题以及解决办法课程设计过程中遇到的主要问题以及解决办法 由于要设计本课题所需要用到的知识有很多都是没有教过的,所有使用的 一些元器件也是完全没接触过的型号。因此在实验中遇到不少的问题:因此在实验中遇到不少的问题: 1)要实现本课题所需要

25、的内容需要用到好多脑子里几乎没半点概念的知识; 2)对于所需要使用到的模块不了解,如 AD/DA 转换、IIC 总线等; 3)对于原理图多需要用到的芯片不会用,如 PCF8591、AT24C02、光敏电阻 黎明职业大学 机电工程系 课程设计 共 25 页 第 - 16 - 页 等; 4)对于原理图跟程序之间,各模块如何连接使其成为一个系统不了解。 解决办法:解决办法: 1)花了的一段时间自学那些没教过的知识,AD/DA 转换、IIC 总线的应用等, 并知道要实现这些功能多需要用到的元器件。 2)花了几天时间全面地查询、了解所需要用到的元器件其原理及怎样应用。 3)又花了几天的时间将上面查询到的

26、资料“消化”掉,以便开始课程设计的 开始动工设计。 4)资料理解完之后,对于整个系统的构成已经有一个大体的理念了,可以开 始动手设计了。 八、八、 心得体会心得体会 经过这一次的课程设计,让我了解到我的知识是那么的稀少、那么的浅薄。 单片机的时间那么大,我现在所学的,连皮毛都还算不上。需要多多的努力学 习,想要基础的掌握单片机,光靠课堂的学习是不够的,课后仍需要自学许许 多多的知识。只有知识掌握到那个度了,才可以大声的对自己说,我单片机入 门了。单片机,入门难,深入也不是简单的事。所以想要成为单片机精英,需 要付出比现在多好几倍的努力才能达到。 这次的课程设计让我看到了我自身在单片机的学习上的

27、不足点。太多元器 件不懂,脑子里面压根就没有存储任何资料,对一些元器件不管是原理还是怎 样应用都是一个致命的盲点。不管是对于单片机的设计还是以后其他东西的设 计,元器件认知的太少都是以后想在专业领域发展下去的一个很大的阻碍。让 我知道了,在学校剩下的这些时间里面我该读写什么了。不管事情忙不忙都得 抽时间出来自学各种各样的元器件其原理还有怎样应用。不一定要全部精通, 但至少也一定要略懂。这样以后在设计其他东西的时候,脑子里面才可以本能 的想想可能会用到什么元器件,并在次查看设计需求和元器件应用方式看是否 真可以用得上。 这次的课程设计,让我更加熟悉了单片机需要用到的 Proteus 仿真软件、

28、Keil 程序编写软件、CH341SER 驱动软件、STC_ISP_V478 烧写软件的功能和 使用方法;也让我学习到了好几种电子元器件的使用方法和原理。收获颇丰。 黎明职业大学 机电工程系 课程设计 共 25 页 第 - 17 - 页 在设计的过程中遇到许多的困难,很感谢帮助我们解答困惑的所有人。当 然这对提升我自己查找和运用资料的能力也起很好的推动作用,对不懂问题的 解答思路能力也很有帮助。 九、九、 附件附件 参考资料:参考资料: 1 张义和等. 例说 51 单片机(C 语言版) (第 3 版). 北京:人民邮电出 版社,2010. 2 彭伟. 单片机 C 语言程序设计实训 100 例基

29、于 8051+Proteus 仿真. 北京:电子工业出版社.,2009. 3 李健,蒋全胜,任灵芝.智能路灯控制系统设计J.工业控制计算机.2010 年, 第六期 4 胡斌. 元器件及实用电路M.电子工业出版社, 2007 年 7 月 5 冯育长等编著. 单片机系统设计与实例分析M.西安电子科技大学出版, 2007 6 7 .hk/谷歌搜索. 8 9 10 黎明职业大学 机电工程系 课程设计 共 25 页 第 - 18 - 页 实物照片图:实物照片图: (不符合条件,LED 灯灭) 黎明职业大学 机电工程系 课程设计 共 25 页 第 - 19 - 页 (符合条件,LED 灯亮) Proteu

30、s 仿真图:仿真图: (符合条件,LED 灯亮起) 黎明职业大学 机电工程系 课程设计 共 25 页 第 - 20 - 页 (未达到条件,LED 灯灭) Keil 程序:程序: #include #define uchar unsigned char #define uint unsigned int unsigned char dispcount; sbit a=P10;/段控制 sbit b=P11;/位控制 sbit LeDen=P12;/LED 灯控制端 sbit Line=P13;/点阵行控制端 sbit rst=P34;/DS1302 复位端,低电平关闭 sbit SDA=P32;

31、 sbit SCL=P33; unsigned char Duanma=0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 x7d,0 x07,0 x7f,0 x6f; unsigned char Weima=0 xfe,0 xfd,0 xfb,0 xf7,0 xef,0 xdf,0 xbf,0 x7f; uchar tempdata8; /延时函数/ 黎明职业大学 机电工程系 课程设计 共 25 页 第 - 21 - 页 void Delay(uint z) /延时函数延时 1ms uchar x,y; for(x=0;xz;x+) for(y=0;y120;y+);

32、 /启动总线/ void Start() SDA=1; /时钟保持高,数据线从高到低一次跳变,I2C 通信开始 SCL=1; Delay(0); SDA=0; Delay(0); SCL=0; /结束总线/ void Stop() SDA=0; /时钟保持高,数据线从低到高一次跳变,I2C 通信停止 SCL=1; Delay(0); SDA=1; Delay(0); SCL=0; /非应答函数/ void Noack()/ 函数功能: 从机发送非应答位子程序,迫使数据传输过 程结束 SDA=1; Delay(0); SCL=1; Delay(0); SCL=0; void Ack() / 函数

33、功能: 主机应答位检查子程序,迫使数据传输过程结 束 SDA=0; 黎明职业大学 机电工程系 课程设计 共 25 页 第 - 22 - 页 Delay(0); SCL=1; Delay(0); SCL=0; /数据发送函数/ void Send(uchar c) uchar bite; for(bite=0;bite8;bite+) / 向 SDA 上发送一位数据字节,共八位 if(cbite) / 若要发送的数据最高位为 1 则发送 位 1 else SDA=0; / 传送位 0 SCL=1; Delay(0); SCL=0; SDA=1; Delay(0); Delay(0); Delay

34、(0); /接收函数/ uchar Rec() uchar byte,bite; SDA=1; /从 SDA 线上读取上一数据字节,共八位 for(bite=0;bite8;bite+) SCL=0; Delay(0); SCL=1; Delay(0); byte=Duanma2) LeDen=1; P0=0 x00; LeDen=0; Delay(30); if(tempdata1Duanma2) LeDen=1; 黎明职业大学 机电工程系 课程设计 共 25 页 第 - 25 - 页 P0=0XFF; /关闭 LED 灯 LeDen=0; Delay(30); TH0=(65536-2000)/256; /重新赋值 高八位 TL0=(65536-2000)%256;/重新赋值 低八位 Display(0,8); /显示函数,使用中断显示

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1