个人的单片机开发板c语言程序及模块设计总结.doc

个人的单片机开发板c语言程序及模块设计总结.doc

  1. 1、本文档共59页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
个人的单片机开发板c语言程序及模块设计总结 目录 Keil 软件的使用 2 *LED 显示输出* 8 一. 闪烁灯 9 二.广告灯的左移右移 10 三. 按键识别 14 四.数码管动态显示 15 五.4×4 矩阵式键盘识别 17 六.按键中断识别 19 七.定时器 T0 的应用---9.9 秒计时设计 21 八.利用定时器产生乐曲 23 九.数摸转换 ADC0804 的应用 26 十.摸数转换 DAC0832的应用 32 十一.24CO8 的读写操作 35 十二.PC 机与单片机通信(RS232 协议) 39 十三.DS18B20 测量温度系统 41 十四.128X64 液晶显示器的基本应用 45 十五.标准键盘 PS/2与单片机通信 47 十六,128X64无字库液晶4X4键盘输入使用(密码锁) 51 十七、串口下载线 57 Keil 软件的使用 软件是目最流行开发 80C51 系列单片机的软件,Keil 提供了包括 C 编译器、宏 汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案。 1. 使用Keil 前必须先安装。安装过程简单,这里不在叙述。 2. 安装好了Keil 软件以后,我们打开它。打开以后界面如下: 我们先新建一个工程文件,点击“p工程”菜单,如下图:: 4. 选择工程文件要存放的路径 ,输入工程文件名 LED, 最后单击保存: 在弹出的对话框中选择 CPU 厂商及型号: 6. 选择好 Atmel 公司的 AT89S52或AT89C52 后 , 单击确定: 7.新建一个 C51 文件 , 单击左上角的 New File (新建文件)如下图所示: 8.保存新建文件使文件名为*.C的扩展名: 9.保存好后把此文件加入到工程中方法如下 : 用鼠标在 Source Group1 上单击右键 , 然后再单击 添加文件到组‘Source Group 1如下图: 10. 选择要加入的文件 , 找到led.C 后 , 单击 Add, 然后单击关闭: 11.程序编辑后选择左窗口“目标Target 1属性”点击右键选择 “输出”将E生成HEX文件打钩。然后,点击确定,如下图所示。 12.按一下,快捷键F7,编译程序。 *LED 显示输出* 很明显,要点亮使发光二极管,必须使单片机的I/O口P1.0输出低电平。于是我们的任务就是编程序使P1.0输出地电平。 #includereg52.h /*LED 显示输出 具体口输出*/ sbit P1_0=P1^0; /*定义p1.0为p1_0 */ sbit P1_1=P2^1; /*定义p2.1为p1_1 */ sbit P1_2=P3^2;/*定义p3.2为p1_2 */ sbit P1_3=P0^3;/*定义p0.3为p1_3 */ main() { P1_0=0;/*输出高电平 即:灯亮 */ P1_1=0; P1_2=0; P1_3=0; } #includereg52.h /* LED 显示输出 整体输出*/ main() { P1=0;/*输出高电平 */ P2=0; P3=0; P0=0; AT89S52单片机从简单到复杂程序演示。 一. 闪烁灯 [实验任务] 在 P1.0 端口上接一个发光二极管 L1,使 L1 在不停地一亮一灭,一亮一灭 的时间间隔为0.2秒。 [硬件电路] 与上面点亮小灯的连接完全相同。 #includereg52.h /*闪烁灯*/ del() /*延时0.2秒*/ { unsigned char i,j,k; for(i=20;i0;i--) for(j=20;j0;j--) for(k=248;k0;k--); } sbit P1_0=P1^0; main() { while(1)/*永远为真,一直执行下去*/ { P1_0=0; del(); P1_0=1; del(); } } #include reg52.h //#define uchar unsigned char //#define uint unsigned int sbit P10=P1^0; void mDelay(unsigned int Delay) { unsigned int i; for(;Delay0;Delay--) { for(i=0;i124;i++) {;} } } void main() { for(;;) { P10=!P10; //取反 P1.0 mDelay(1000); //延时1秒。如果是2000那么是2秒 } } 二.广告灯的左移右移 [实验任务] 做广告灯的左移右移,八个发光二极管分别接在单片机的P3.0-P3.7接口 上,输出“0”时,发光二极管亮,开始

文档评论(0)

ze122230743 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档