我是靠谱客的博主 阔达果汁,最近开发中收集的这篇文章主要介绍linux 串口异步通知,异步串口uart的c语言编程,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

#define uchar unsigned char

#define uint unsigned int

uchar Table[16]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,

0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};

uchar Send_Data[]={'a','b','c','d'};

uchar Receive_Data[]={0,0,0,0};

void DelayMs(uint i)

{uint j;

for(;i!=0;i--)

{for(j=2000;j!=0;j--) {;}}

}

void Display(uchar *p)         //动态显示函数,参数p为待显示的数组名

{uchar i,sel=0x01;

for(i=0;i<4;i++)

{PORTA=sel;                  //选通最右边的数码管

PORTC=0xff-Table[p[i]];     //送字型码

DelayMs(1);                 //显示延时

sel=sel<<1;                 //移位以显示前一位

}

}

void main(void)

{uchar temp,i;

DDRA=0xff;

DDRC=0xff;

PORTA=0xff;

PORTC=0x00;

DelayMs(2000);

PORTC=0xff;

UBRR=51;//9600bps,8.000M,

UCR=0x18;//RXD.TXD使能;

for(i=0;i<4;i++)

{while(!(USR&0x80))

{Display(Receive_Data);}            //等待接收完成

Receive_Data[i]=UDR-48;}            //接收数据

for(i=0;i<4;i++)

{while(!(USR&0x20))

{Display(Receive_Data); }           //等待移位寄存器空;

UDR=Send_Data[i];}

while(1)

Display(Receive_Data);

}

最后

以上就是阔达果汁为你收集整理的linux 串口异步通知,异步串口uart的c语言编程的全部内容,希望文章能够帮你解决linux 串口异步通知,异步串口uart的c语言编程所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(40)

评论列表共有 0 条评论

立即
投稿
返回
顶部