郭天祥十天学通单片机TX-1C单片机实验板所有课作业+答案特别整理供单片机爱好与学习者使用本文亲测可用 讲次内容细节
第一讲学单片机预备知识、
如何点亮一个发光管 单片机能做什么基本电子知识如何用TX-1C单片机学习板学习单片机 C51知识简介如何申请免费芯片样品。点亮一个发光管
第二讲流水灯设计、蜂鸣器发声、继电器控制简单延时程序、子程序调用、 带参数子程序设计、流水灯同时蜂鸣器响、 如何驱动蜂鸣器 及如何驱动继电器 集电极开路的概念及应用。
第三讲数码管显示的原理、数码管的静态显示 共阳、 共阴数码管显示原理、 定时器工作方式介绍、重点讲述工作方式2、 中断概念及中断函数写法、外部中断试验、定时器中断应用
第四讲数码管的动态显示原理及应用实现动态扫描概念、定时器、 中断加深用单片机的定时器及中断设计一个60秒定时器
第五讲独立键盘、矩阵键盘
的检测原理及实现键盘用来做什么、如何键盘检测、消抖、 键盘编码、 带返回值函数写法及应用第六讲AD、 DA的工作原理
及实现、运放电路 模拟电压与数字电压的关系、为什么要使用 AD及DA、ADC0804的操作方法、 DAC 0832的操作方法
第七讲串口通讯原理及操作流程串口通讯工作方式、 10位数据通讯、波特率概念、如何根据波特率计算定时器初值、 串口打印在调试程序中的应用。
第八讲1602液晶、 12864液晶显示原理及实现最简单液晶工作原理、 如何开始对一个没有任何概念的芯片开始单片机的操作
第九讲IIC总线AT24C02芯片工作原理IIC总线工作原理、
目前非常通用的一种通信机制
第十讲利用51单片机的定时器设计一个时钟综合运用51单片机知识设计一个可以随意调节时间、带整点闹铃的时钟。 其中用到定时器、 中断、按键、蜂鸣器、数码管或串口通信
第^一讲 用DS 12C887时钟芯片设计一个高精度时钟 DS 12C887内部带有锂电池系统掉电情况下可自行精确走10年并带有闹钟功能、年、月、 日、时、分、秒等。 本节由学生自己设计电路
第十二讲使用Protell99绘制电路图全过程Protell99软件使用、 元件库、封装库设计、 绘制原理图、错误检查、生成 PCB手动、 自动布线、送去加工
第十三讲Altium designer 6.5绘制电路图全过程最顶级电路板设计软件Altium
Designer使用、元件库、封装库设计、绘制原理图、错误检查、生成 PCB手动、 自动布线、送去加工lesson1
对照TX-1C单片机学习板原理图写程序
用位操作和总线操作两种方法完成以下题目
1•熟练建立KEIL工程
2.点亮第一个发光管.
3.点亮最后一个发光管
4.点亮1、 3、 5、 7
5.点亮二、 四、五、六
6.尝试让第一个发光管闪烁
7.尝试设计出流水灯程序lesson2
第一个发光管以间隔200ms闪烁
8个发光管由上至下间隔1s流动其中每个管亮500ms灭500ms亮时蜂鸣器响灭时关闭蜂鸣器一直重复下去。
8个发光管来回流动每个管亮100ms流动时让蜂鸣器发出“滴滴”声。用8个发光管演示出8位二进制数累加过程。
8个发光管间隔200ms由上至下再由下至上再重复一次然后全部熄灭再以300ms间隔全部闪烁5次。重复此过程。
间隔300ms第一次一个管亮流动一次第二次两个管亮流动依次到8个管亮然后重复整个过程。
间隔300ms先奇数亮再偶数亮循环三次一个灯上下循环三次两个分别从两边往中间流动三次再从中间往两边流动三次 8个全部闪烁3次关闭发光管程序停止。
Iesson3
1利用定时/计数器T0从P1.0输出周期为1s的方波让发光二极管以1HZ闪烁设晶振频率为12MHz。 。
2、 利用定时/计数器T1产生定时时钟 由P1口控制8个发光二极管,使8个指示灯依次一个一个闪动 闪动频率为10次/秒8个灯依次亮一遍为一个周期 循环。
3、 同时用两个定时器控制蜂鸣器发声定时器 0控制频率定时器1控制同个频率持续的时间 间隔300ms依次输出1 10 50,100,200,400,800,
1khz的方波。
4、 用定时器以间隔500MS在6位数码管上依次显示0、 1、 2、 3…・C
D、 E、 F,重复。
Iesson4
1•利用动态扫描方法在六位数码管上显示出稳定的 654321.
2•用动态扫描方法和定时器1在数码管的前二位显示出秒表精确到1%秒 即后两位显示1%秒一直循环下去。
3•利用动态扫描和定时器1在数码管上显示出从765432开始以1/10秒的速度往下递减直至765398并保持显示此数与此同时利用定时器0以500MS速度进行流水灯从上至下移动 当数码管上数减到停止时实验板上流水灯也停止然后全部开始闪烁 3秒后用T0定时流水灯全部关闭、数码管上显示出“HELLO。到此保持住。
Iesson5
数码管前三位显示一个跑表从000到999之间以1%秒速度运行 当按下一个独立键盘时跑表停止松开手后跑表继续运行。 用定时
器设计表 。
在上题的基础上用另外三个独立键盘实现按下第一个时计时停止按下第二个时计时开始按下第三个是计数值清零从头开始。
按下16个矩阵键盘依次在数码管上显示1-16的平方。如按下第一个显示1第二个显示4・ ・ ・
Iesson7
1•由上位机发送1给单片机时蜂鸣器以400ms频率发声发2时以200ms频率发声发3时以100ms频率发声发4时关闲蜂鸣器。 1•以2400bps从计算机发送任一字节数据当单片机收到该数据后 在此数据前加上一序号然后连同此数据一起发送至计算机 当序号超过255时归
零。
2.以16进制发送一个0-65536之间的任一数 当单片机收到后在数码管上动态显示出来波特率自定。
3.用AD以1HZ的频率采集模拟信号然后转换成数字量再将其以
1200bps发送到计算机在计算机上显示。
4•按下矩阵键盘第一行时以1200bps发送 1,2 3,4,第二行时以2400bps发送5 6,7,8,第三行以4800bps发送 9,10 11, 12,第四行以9600pbs发送,13,14,15, 16.
Lesson1作业
1用位操作点亮第一个发光管.
//适用TX-1C单片机实验板
//晶振为11单片机头文件sbit led仁P1A0;//单片机管脚位声明void main() //主函数
{led 1=0; //将单片机P 1.0口清零while(1); //程序停止在这里,在后面会讲到为什么这样写。
}2/用总线操作点亮第一个发光管
//适用TX-1C单片机实验板
//晶振为11/*********************************************************/
#inc lud e<re g 52.h>//52单片机头文件void main() //主函数
{
P 1=0xfe; //将单片机P 1口的8个口由高到低分别赋值为11111110 while(1); //程序停止在这里在后
面会讲到为什么这样写。
}
3 //用位操作点亮最后一个发光管.
//适用TX-1C单片机实验板
//晶振为11.0592M
/*********************************************************/
#inc lud e<re g 52.h>//52单片机头文件sbit led8=P"7; //单片机管脚位声明void main() //主函数
{led8=0; //将单片机P1.7口清零while(1); //程序停止在这里在后面会讲到为什么这样写。
}
4 //用总线操作点亮最后一个发光管.
//适用TX-1C单片机实验板
//晶振为11.0592M
/*********************************************************/
#inc lud e<re g 52.h>//52单片机头文件void main() //主函数
{
P 1=0x7f; //将单片机P 1口的8个口由高到低分别赋值为01111111while(1); //程序停止在这里在后面会讲到为什么这样写。
}
5 //用位操作点亮1,3,5,7发光管.
//适用TX-1C单片机实验板
//晶振为11单片机头文件sbit led仁P1A0; //单片机管脚位声明sbit led3=P"2; //单片机管脚位声明sbit led5=P1A4; //单片机管脚位声明sbit led7=P1A6; //单片机管脚位声明
) //主函数
while(1); //程序停止在这里在后面会讲到为什么这样写。 }
6//用总线操作点亮1,3,5,7发光管.
//适用TX-1C单片机实验板
//晶振为11.0592M
/*********************************************************/
#include<reg52.h>//52单片机头文件vo id main() //主函数
{
P 1=0xaa; //将单片机P 1口的8个口由高到低分别赋值为10101010 while(1); //程序停止在这里在后
面会讲到为什么这样写。
}
7
//用位操作点亮2,4,5,6发光管.
//适用TX-1C单片机实验板
//晶振为11/*********************************************************/
#inc lud e<re g 52.h>//52单片机头文件sbit led2=P1X; //单片机管脚位声明sbit led4=P1A3; //单片机管脚位声明sbit led5=P"4; //单片机管脚位声明
sbit led6=P1A5; //单片机管脚位声明void main() //主函数
{led2=0; //将单片机 P 1.1口清零led4=0; //将单片机 P 1.3口清零led5=0; //将单片机 P1.4口清零led6=0; //将单片机P1.5 口清零while(1); //程序停止在这里在后面会讲到为什么这样写。
}
8//用总线操作点亮2,4,5,6发光管.
//适用TX-1C单片机实验板
//晶振为11/*******************************************************
#inc lud e<re g 52.h>//52单片机头文件void main() //主函数
P 1=0xc5; //将单片机P 1口的8个口由高到低分别赋值为11000101 while(1); //程序停止在这里在后面会讲到为什么这样写。
}
9//尝试让第一个发光管闪烁 .(程序看不懂没关系后面章节会有详细讲解 )
//适用TX-1C单片机实验板
//晶振为11.0592M
/*********************************************************/
#inc lud e<re g 52.h>//52单片机头文件sbit led仁P1A0; //单片机管脚位声明void main() //主函数
{unsigned int i; //定义一个int型变量while(1)
{i=50000; //变量赋初值为50000led 1=0; //点亮灯while(i--); //延时i=50000;led 1=1; //熄灭灯while(i--);
}
}
9//尝试写出流水灯程序(程序看不懂没关系后面章节会有详细讲解 )
//适用TX-1C单片机实验板
//晶振为11.0592M
/*********************************************************/
#inc lud e<re g 52.h> //52单片机头文件void main() //主函数
{unsigned int i; //定义一个int型变量while(1)
{i=50000; //变量赋初值为 50000P 1=0xfe; //点亮第一个灯while(i--); //延时i=50000; //变量赋初值为 50000P 1=0xfd; //点亮第二个灯while(i--); //延时i=50000; //变量赋初值为 50000
P 1=0xfb; //点亮第三个灯while(i--); //延时i=50000; //变量赋初值为50000
P 1=0xf7; //点亮第四个灯while(i--); //延时i=50000; //变量赋初值为 50000
P 1=0xef; //点亮第五个灯while(i--); //延时i=50000; //变量赋初值为 50000
P 1=0xdf; //点亮第六个灯while(i--); //延时i=50000; //变量赋初值为 50000
P1=0xbf; //点亮第七个灯while(i--); //延时i=50000; //变量赋初值为 50000
P 1=0x7f; //点亮第八个灯while(i--); //延时
}
Lesson 2
1 //第一个发光管以间隔200 ms闪烁
//适用TX-1C单片机实验板
//晶振为11/*********************************************************/
#include<reg52.h>//52单片机头文件#define uint unsigned int//宏定义#define uchar unsigned char//宏定义sbitled仁P 1A0; //单片机管脚位声明void delay(uint z) //延时函数,z的取值为这个函数的延时ms数如delay(200);大约延时200ms.{ //delay(500);大约延时500ms.uint x,y;for(x=z;x>0;x--)for(y=110;y>0;y--);
}void main() //主函数
{while(1) //大循环led 1=0; //点亮小灯
{
近期联通CUVIP的线路(AS4837线路)非常火热,妮妮云也推出了这类线路的套餐以及优惠,目前到国内优质线路排行大致如下:电信CN2 GIA>联通AS9929>联通AS4837>电信CN2 GT>普通线路,AS4837线路比起前两的优势就是带宽比较大,相对便宜一些,所以大家才能看到这个线路的带宽都非常高。妮妮云互联目前云服务器开放抽奖活动,每天开通前10台享3折优惠,另外...
zji怎么样?zji是一家老牌国人主机商家,公司开办在香港,这个平台主要销售独立服务器业务,和hostkvm是同一样,两个平台销售的产品类别不一平,商家的技术非常不错,机器非常稳定。昨天收到商家的优惠推送,目前针对香港邦联四型推出了65折优惠BGP线路服务器,性价比非常不错,有需要香港独立服务器的朋友可以入手,非常适合做站。zji优惠码:月付/年付优惠码:zji 物理服务器/VDS/虚拟主机空间订...
恒创科技也有暑期的活动,其中香港服务器也有一定折扣,当然是针对新用户的,如果我们还没有注册过或者可以有办法注册到新用户的,可以买他们家的香港服务器活动价格,2M带宽香港云服务器317元。对于一般用途还是够用的。 活动链接:恒创暑期活动爆款活动均是针对新用户的。1、云服务器仅限首次购买恒创科技产品的新用户。1 核 1G 实例规格,单个账户限购 1台;其他活动机型,单个账户限购 3 台(必须在一个订单...