实验名称:串口通信之单片机和PC计算梯形面积
MCU型号:STC12C5A60S2(12T模式)
晶振 :11.0592MHZ
实验内容:利用单片机和PC机串口通信的工作方式1(波特率可变),(已经晶振为11.0592MHZ)设置波特率为9600B/S,结合定时器1的工作方式2(TH1=0xfd,TL1=0xfd),输入梯形的上底、下底、高,输出梯形面积
效果图:
参考程序:
/*
文件名:串口通信值单片机和PC机计算梯形面积.c
创建人:杨瑞
创建时间:2013年2月20日
开发环境:HOT51增强型单片机开发板
程序功用:利用单片机与PC机的串口通信,计算梯形面积
附:利用单片机和PC机的串口通信的工作方式1(波特率可变),(已知晶振为11.0592MHZ)设置通信波特率为9600b/s,结合定时器1的工作方式2(TH1=0xfd,TL1=0xfd),输入上底、下底、高,输出梯形面积
提示:下载程序后,打开串口工具,需要复位一下。
*/
#include
#include
#define uint unsigned int
#define uchar unsigned char
void uart(void) //串口通信初始化
{
SCON=0x40; //串口通信工作方式1
REN=1; //允许接收
TMOD=0x20; //定时器1的工作方式2
TH1=0xfd,TL1=0xfd;
TI=1; //这里一定要注意
TR1=1; //打开定时器
}
void main(void)
{
uint up=0,down=0,high=0;
uint result ;
uart();
while(1)
{
printf("********************************\r\n");
printf("Please input up,dowm,high:\r\n");
scanf("%d%d%d",&up,&down,&high) ;
printf("\r\nResult=%d\r\n",result=(up+down)*high/2);
}
}
关键字:Printf 51单片机 使用方法
引用地址:
Printf在51单片机的使用方法
推荐阅读最新更新时间:2024-03-16 15:39
#51单片机#按键
按键 常用的按键电路有两种,一种是独立式按键,另一种是矩阵式按键。 独立按键 独立式按键各自与独立的输入线相连接。 以下图中的电路为例,进行分析。 独立式按键原理图: 判断按键是否被按下的依据是:KeyIn(n) IO口电平的高低。 当K1按下时,电路高低电平端联通。此时Keyln1引脚为低电平。 当K1松开时,线路断开,Keyln1与+5V是等电位。此时Keyln1引脚为高电平。 通常,单片机IO口内部存在上拉电阻。 以准双向IO口结构图为例: 方框内的电路是单片机的内部部分,方框外是外接的上拉电阻和按键。 注意:读取外部按键信号时,单片机必须先给该引脚置1!!! 分析如下: 当内部输出=
[单片机]
89C51单片机数码管显示
数码管显示分为静态数码管显示和动态数码管显示 学习掌握数码管相关的内容,可以从以下三方面入手: 1.数码管电路图 2.译码器 3.进制转化 直接上图 数码管电路图 数码管电路的接法有共阴和共阳两种,这里采用共阴接法 从其中取出一个数码管进行分析 单个数码管 此处为一个8位的数码管,想要数码管显示出想要的数字,则需要对数码管进行高低电平的设置 1为高电平,0为低电平 分别对 a,b,c,d,e,f,g,dp进行1和0的编写,此处可以理解为二进制进行十六进制的转化 如图中所示,数字2的 八位二进制就可以表示为 0101 1011,读数为从dp依次读到a,转化为十六进制则是0x5b 数码管中各个数值对应的字节 0:
[单片机]
51单片机在玻璃管加热控制系统中的应用
1 引言 步进电机是一种将电脉冲信号转换成相应的角位移或线位移的电磁机械装置,是一种输出与输入数字脉冲对应的增量驱动元件,具有快速启动和停止的能力。但大多数设计人员常常习惯于用逻辑电路实现复杂的步进电机的控制,虽然已经取得很大成效,但实现起来成本高、费时多,而且一旦组成了电路,就很难再改动,因此不得不完全重新设计控制器。微处理器与微计算机的先进技术和低廉的价格,给步进电机的控制开创了一个新的局面 。人们完全可以借助于软件来对步进电机实施控制,从而实现复杂而成本又不高的控制系统,同时还可以很灵活地通过改变程序来改变控制方案。为此,我们基于 89C51单片机设计了步进电机控制器用于玻璃管加热系统。该控制器具有线路简洁、性能良好、成本
[单片机]
51单片机学习——9--温度传感器DS18B20
DS18B20 简介 DS18B20数字温度传感器接线方便,封装后可应用于多种场合,如管道式,螺纹式,磁铁吸附式,不锈钢封装式。主要根据应用场合的不同而改变其外观。封装后的DS18B20可用于电缆沟测温,高炉水循环测温,锅炉测温,机房测温,农业大棚测温,洁净室测温,弹药库测温等各种非极限温度场合。耐磨耐碰,体积小,使用方便,封装形式多样,适用于各种狭小空间设备数字测温和控制领域。 特点 1、适应电压范围更宽,电压范围:3.0~5.5V,在寄生电源方式下可由数据线供电 2、独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微 处理器与DS18B20的双向通讯。 3、DS18B20支持多点组网功能,多个
[单片机]
51单片机的printf等格式输出函数
在51单片机上使用printf函数、sprintf函数要注意以下几点: 1. 无符号16位数格式符用%d或者%u,千万不能加字母“l”,否则会出错 2. 32位数据格式符必须加字母“l”,否则会出错 3. 8位数据格式符要加字母“b”,例如%bd、%bu等
[单片机]
51单片机累计定时中断次数实现独立按键
一、使用proteus绘制简单的电路图,用于后续仿真 二、编写程序 /******************************************************************************************************************** ---- @Project: Independent-KEY ---- @File: main.c ---- @Edit: ZHQ ---- @Version: V1.0 ---- @CreationTime: 20200506 ---- @ModifiedTime: 20200506 ----
[单片机]
基于89C51单片机的节拍器设计
1 硬件电路原理 节拍器以AT89C51 单片机为控制中心,由LED 显示模块、调节键盘模块、声音输出模块组成。图1 是节拍器的电路原理图。ATMEL 公司生产的AT89C51 单片机与MCS51指令系统兼容,40 脚结构,是系统的控制中心。显示模块由四位一体的共阳极蓝色LED 显示器构成,采用动态扫描显示方式, Q11~ Q14是LED 的位选择开关三极管, R6~ R13是数码管段发光二极管的限流电阻。四位一体的LED 数码管完成显示节拍数、各功能代码及参数值的功能。键盘调节模块由4 只按键构成,分别是功能选择键A、设置参数选择键B、参数增加键C和参数减少键D ,4 只按键可以完成各种功能的选择和各参数的设置。声音输
[单片机]
8051单片机指令系统的用法介绍
一个计算机的指令系统就是它能执行的全部指令的集合。8051的指令系统共有111条指令,由42种助记符和7种寻址方式组合而成。 8051的指令通常包括操作码,和操作数两部分。操作码规定指令进行什么操作,采用助记表示;操作数表示指令的操作对象。 汇编语言指令的基本形式是:操作码助记符 目的操作数,源操作数。 操作码助记符与操作数分开书写,操作数中目的操作数在前,源操作数在后,操作数之间用逗号分隔。 如指令MOV B,#23H中符号MOV就是操作码助记符,这个助记符的意义为将源操作数传入目的操作数地址中,累加器A是目的操作数,寄存器B是源操作数。 8051的机器语言指令根据长度有一字节、二字节、三字节三种。一字节指令操作码中
[单片机]