郭天祥十天学通单片机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; //点亮小灯
{
Virtono是一家成立于2014年的国外VPS主机商,提供VPS和服务器租用等产品,商家支持PayPal、信用卡、支付宝等国内外付款方式,可选数据中心共7个:罗马尼亚2个,美国3个(圣何塞、达拉斯、迈阿密),英国和德国各1个。目前,商家针对美国圣何塞机房VPS提供75折优惠码,同时,下单后在LET回复订单号还能获得双倍内存的升级。下面以圣何塞为例,分享几款VPS主机配置信息。Cloud VPSC...
快云科技已稳步运行进两年了 期间没出现过线路不稳 客户不满意等一系列问题 本司资质齐全 持有IDC ICP ISP等正规手续 有独特的网站设计理念 在前几天刚是参加过魔方系统举行的设计大赛拿获最佳设计奖第一名 本公司主营产品 香港弹性云服务器,美国vps和日本vps,香港物理机,国内高防物理机以及美国日本高防物理机 2020年的国庆推出过一款香港的回馈用户特惠机 已作为传家宝 稳定运行 马上又到了...
DogYun(中文名称狗云)新上了一批韩国自动化上架独立服务器,使用月减200元优惠码后仅需每月300元,双E5 CPU,SSD+NVMe高性能硬盘,支持安装Linux或者Windows操作系统,下单自动化上架。这是一家成立于2019年的国人主机商,提供VPS和独立服务器租用等产品,数据中心包括中国香港、美国洛杉矶、日本、韩国、德国、荷兰等。下面分享这款自动化上架韩国独立服务器的配置和优惠码信息。...