导航:首页 > 操作系统 > 单片机串口以16进制

单片机串口以16进制

发布时间:2023-06-16 21:07:30

1. 在51单片机的串口通信中,如何在数码管上用16进制显示0-65536

#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
uchar code tab_disp[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71};
uchar code tabwela[]={
0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
uchar i,k,flag;
uint b,num1[2];
uchar num[5];
void delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=10;y>0;y--);
}
void display()
{
uchar j;
for(j=0;j<5;j++)
{
P0=tabwela[j];
P2=tab_disp[num[j]];
delay(1);
P2=0x00;
}
}
void main()
{
TMOD=0x20;//定时器1的工作方式2
TH1=0xfd; //装数,设定波特率 9600
TL1=0xfd;
TR1=1;//启动定时器1
REN=1;//启动串口接收数据
SM0=0;//串口工作方式1
SM1=1;
EA=1;//开总中断
ES=1;//开串口中
while(1)
{
if(flag==1)
{
num[0]=b/10000;
num[1]=b%10000/1000;
num[2]=b%1000/100;
num[3]=b%100/10;
num[4]=b%10;
flag=0;
SBUF=b;
while(TI==1)
TI=0;
}
display(); }

}
void ser() interrupt 4
{
while(RI==1)
{
RI=0;
num1[i]=SBUF;
i++;
if(i==2)
i=0;
k++;
}
if(k==2)
{
k=0;
b=(num1[0]*256)+num1[1];
flag=1;
}
}

2. 我想利用单片机通过串口发送几个16进制数FF 10 11 01 DD 求高手指点,不胜感激。

单片机通过串口发送几个16进制数FF 10 11 01 DD,程序如下:
void Send(unsigned char Tx_Data)//向串口发字符
{
SBUF=Tx_Data;
while(!TI);
TI=0;
}
main()
{
先串口初始化,然后:
Send(0xFF);
Send(0x10);
Send(0x11);
Send(0x01);
Send(0xDD);
即可。

}

3. 通过单片机串口发送一串16进制码

发送16进制数和空格的要求不合理,要发16进制数就是连续的。

要发空格,那是字符,即ASCII码,而一个字节的16进制数要发两个字符。
以16进制发送时,空格的16进制数20H,而不是这种空的空格。

阅读全文

与单片机串口以16进制相关的资料

热点内容
加密手机号码是怎么回事 浏览:921
女程序员真实图片 浏览:696
pic单片机烧写 浏览:814
linuxping结果 浏览:196
单片机采集负电压 浏览:407
服务器收件什么意思 浏览:893
单片机发数组 浏览:884
魔方虚拟主机销售系统源码 浏览:709
rsa验签php源码 浏览:514
github怎么直接打开源码 浏览:529
和家亲app怎么下载不了了 浏览:728
蓝屏程序员 浏览:78
androidinflatexml 浏览:489
魔兽争霸2下载好了怎么解压 浏览:920
怎么做少女心解压本 浏览:203
php刷新cookie 浏览:737
推荐服务器怎么关闭 浏览:615
dos命令隐藏窗口 浏览:591
三国志13用什么解压 浏览:979
单片机水雾化的方法 浏览:248