完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
|
|
相关推荐
1个回答
|
|
1、新建工程与点亮LED小灯
LED小灯即发光二极管,它具有单向导电性,对于发光二极管而言,需要根据它的压降与额定电流来选择合适的限流电阻。打开Keil4软件,选择Project,New uVision Project。 选定工程的保存路径,并给工程命名,保存类型默认.uvproj,点击保存 出现如下对话框,点击下拉按钮,选择STC MCU Database,点击OK 选择STC89C52RC,点击OK 选择否 点击New,生成一个Text1文件 点击 File, Save, 出现如下对话框,将文件命名为后缀为.c的文件,默认保存类型,点击保存 点击Target 1前面的加号,在Source Group 1上右击,选择Add Files to Group‘Source Group 1’ 选择刚刚保存的以.c为后缀的文件,点击Add,然后关闭窗口 点击Source Group 1前面的加号,会发现下面多了刚刚添加的.c文件 在右侧文本框中写入程序 点击Target Options按钮 在Target标签页将晶振改为11.0592 在Output标签页勾选Create HEX File,点击OK 点击Rebuild按钮,可以看到最下方Build Output对话框出现已经生成hex文件的信息,以及0个错误,0个警告的信息 打开STC-ISP软件,选择单片机型号为STC89C52,串口号就是安装了USB转串口驱动之后虚拟的COM口,可在计算机管理-设备管理器-端口中查看 点击打开程序文件,选择工程的存储路径,可以看到工程文件夹下有一个hex文件,打开它 点击下载/编程按钮 打开单片机开发板的开关,可以看到操作成功提示,LED小灯被成功点亮 以下是点亮LED小灯的程序 下面是开发板原理图的LED显示电路,由于发光二极管的单向导电性,决定了LED小灯是低电平点亮,因此在main函数中给LED1低电平,就可以点亮小灯;然后利用while(1)进行无限循环,保持LED小灯一直是亮的;***it是定义特殊功能寄存器的位变量,将P1^0另起名为LED1,以便进行位操作 2、让LED小灯闪烁起来 新建一个工程,写入如下程序,整个新建工程的过程如上 typedef用于为已有类型创建一个别名,便于后面使用;Delay为延时函数,利用循环结构不断地进行空跑,从而实现延时,这里的延时为粗计算,后文将介绍如何利用定时器进行精确延时;main函数中不断地循环着将8个LED灯全部点亮,延时保持,又将8个LED灯全部熄灭,延时保持的整个过程,以实现在人眼中的闪烁现象;0x00与0xff均为十六进制数,表示为二进制即00000000与11111111 3、LED流水灯 新建一个工程,写入如下程序 其中《《为左移符号,高位溢出,低位补0,P1《《=1表示经过每一次循环就向左移一位,低位补0,P1由11111111,依次变为11111110,11111100,11111000,11110000,11100000,11000000,10000000,00000000,然后又进行重复循环 4、LED跑马灯 新建一个工程,写入如下程序 _crol_()函数包含于intrins.h头文件中,因此程序需要添加#include 《intrins.h》,P1=_crol_(P1,1)表示每次将P1循环左移1位,P1由11111110,依次变为11111101,11111011,11110111,11101111,11011111,10111111,01111111,然后重复循环 |
|
|
|
只有小组成员才能发言,加入小组>>
2513 浏览 0 评论
1083浏览 2评论
700浏览 1评论
452浏览 0评论
193浏览 0评论
328浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 01:00 , Processed in 1.171837 second(s), Total 80, Slave 61 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号