电路原理图如下:
程序说明
接线:MAX485-1 D+ 链接 MAX485-2 D+ ;MAX485-1 D- 链接 MAX485-2 D-
功能:串口一 自动发送一个tab数据,串口二接收,接收后数据显示在P0口的led灯上
串口二 自动发送一个tab数据,串口一接收,接收后数据显示在p0口的led灯上
按key1,P0口显示0xAA
按key2,P0口显示0x55
按key3,P0口显示0xf0
按key4,P0口显示0x0f
*********************************************************************/
#include "STC12C5A60S2.h" //库文件
#define uchar unsigned char//宏定义无符号字符型
#define uint unsigned int //宏定义无符号整型
/********************************************************************
初始定义
*********************************************************************/
uchar dat1=0,dat2=0;
uchar tab[8]={0xfe,0xfd,0xfB,0xf7,0xef,0xdf,0xBf,0x7f};
sbit key1=P2^0;
sbit key2=P2^1;
sbit key3=P2^2;
sbit key4=P2^3;
/********************************************************************
串口初始化
*********************************************************************/
void init ()
{
TMOD = 0x20; //定时器1产生波特率
SCON = 0x50; //方式1,8位数据,波特率可变
TH1= TL1 = 0xfd; //波特率 9600
S2CON= 0x50; //方式1,八位数据,可变波特率
BRT= 0XFD; //设置波特率9600
TR1= 1; //启动定时器产生波特率
AUXR= 0x10; //启动波特率发生器
IP= 0x00; //优先级默认
EA = 1; //开总中断
ES= 1; //开串口1中断
IE2=0x01; //开串口2中断
}
/********************************************************************
串口一 发送一个字符
*********************************************************************/
void uart1_txd(uchar x)
{
SBUF = x;
}
/********************************************************************
串口二 发送一个字符
*********************************************************************/
void uart2_txd(uchar x)
{
S2BUF = x;
}
/********************************************************************
*********************************************************************/
void delay ( uint t )
{
uint i,j;
for( i=0; i } /******************************************************************** 主函数 *********************************************************************/ void main() { uchar i; init(); for(i=0;i<8;i++) { uart1_txd(tab[i]);//串口一发送数据 delay(500); P0=dat2; //串口二接收数据在led灯显示 delay(500); uart2_txd(tab[7-i]); //串口二发送数据 delay(500); P0=dat1; //串口一接收数据在led灯显示 delay(500); } while(1) { if(key1==0){delay(20);while(!key1){P0=0xAA;} } if(key2==0){delay(20);while(!key2){P0=0x55;} } if(key3==0){delay(20);while(!key3){P0=0xf0;} } if(key4==0){delay(20);while(!key4){P0=0x0f;} } } } /******************************************************************** 串口二 发送接收中断函数 *********************************************************************/ void uart2_isr() interrupt 8 { if( S2CON & 0x01 ) { S2CON &= ~0x01; dat2= S2BUF; } if( S2CON & 0x02 ) { S2CON &= ~0x02; } } /******************************************************************** 串口一 发送接收中断函数 *********************************************************************/ void uart_isr() interrupt 4 { if( RI ) RI = 0; dat1 = SBUF; if( TI ) TI = 0; } /******************************************************************** 结束 *********************************************************************/
上一篇:51单片机数字频率计仿真(可按键切换量程)
下一篇:单片机6位数电子密码锁源码+PCB+仿真原理图设计(可改密码
推荐阅读
史海拾趣
背景:随着公司实力的不断增强,GardTec开始积极拓展新的市场领域,提升品牌影响力。
发展:公司不仅在风扇配件市场保持领先地位,还逐步将业务拓展到更广泛的电子配件领域。同时,GardTec积极参加各类行业展会和交流活动,提升品牌知名度和影响力。
影响:通过市场拓展和品牌影响力的提升,GardTec在电子行业中的地位更加稳固,为公司的长期发展奠定了坚实的基础。同时,这也为公司的合作伙伴和客户带来了更多的机遇和价值。
背景:在电子产品行业,产品品质和安全合规性至关重要。GardTec深知这一点,始终将产品品质放在首位。
发展:公司建立了严格的质量控制体系,确保每一件产品都符合最高的品质标准。同时,GardTec还积极遵循国际安全标准和法规要求,如REACH/RoHS等,确保产品的合规性。
影响:高品质的产品和严格的合规性要求,使得GardTec在电子行业中赢得了客户的信赖和好评,进一步提升了公司的品牌形象和市场竞争力。
Exel Microelectronics Inc公司成立于XXXX年,当时正值电子行业的蓬勃发展期。然而,初创时期的Exel面临着重重困难。公司创始人XXX先生凭借对半导体技术的深刻理解和对市场趋势的敏锐洞察,带领着一支小团队,开始了艰难的创业之路。资金紧张、技术瓶颈、市场竞争激烈,每一个问题都考验着团队的凝聚力和毅力。然而,正是这些困难锻炼了Exel人的意志,使公司逐渐在市场中站稳了脚跟。
随着技术实力的增强,Dae Ryung Electronic Co Ltd公司开始积极拓展市场。公司制定了国际化战略,逐步进入国际市场。通过参加国际展会、与海外企业建立合作关系等方式,公司成功打开了海外市场的大门。同时,公司还针对不同地区的市场需求,推出定制化的产品和服务,进一步提升了市场竞争力。
Corsair Memory Inc公司,由Don Lieberman、John Beekley与Andy Paul于1994年在美国加州佛利蒙创立。起初,公司专注于为英特尔系统生产Cache-On-A-Stick (COAST)模组。然而,随着英特尔将快取内存由主板移至处理器晶体中,Corsair迅速调整战略,将注意力转向电脑内存市场。这一转变不仅使Corsair避开了潜在的市场风险,更为其后续的内存业务奠定了坚实的基础。
在取得一系列辉煌成就的同时,Anderson Electronics Inc公司始终关注可持续发展和环境保护。公司积极推行绿色生产理念,采用环保材料和节能技术,努力降低生产过程中的能耗和排放。同时,公司还关注社会责任和公益事业,积极参与社会公益活动,回馈社会。展望未来,公司将继续坚持创新驱动、质量为本的发展理念,不断推动技术创新和产业升级,为电子行业的发展贡献更多的力量。
请注意,以上内容仅为一个通用的框架,具体的故事内容需要根据Anderson Electronics Inc公司的实际情况进行创作。在撰写时,您可以结合公司的历史背景、发展历程、技术创新、市场拓展、国际合作、产业升级等方面的信息进行详细描述,以展现公司在电子行业中的发展历程和成就。
锂电之后,再无革命性的电池技术。这很可悲。 手机应用繁多,缺乏更好电力支撑。这很可悲。 不论是手机上网,还是手机游戏、手机影音,都需要在手机上进行较长时间的操作,需要手机的电池能够支持更长的时间。而硬件配 ...… 查看全部问答∨ |
目前医疗设备的发展正在彻底变革家庭医疗保健市场,人们无需离开家门就能诊断出各种健康状况。技术的发展使得便携式自助护理保健系统成为现实,这些系统可以帮助人们监视诸如血压、血糖和体温等重要指标。 家庭医疗 ...… 查看全部问答∨ |
我是从事电力行业产品工作的,电力系统现在要搞数字化变电站,要求产品具备IEC61850规约要求的功能,不知有哪位大侠能给提供一些相关的资料(IEC61850的规约我有)。谢谢!… 查看全部问答∨ |
我原来用VC做了一个socket通讯的服务端和客户端测试程序 在wince下,我用那个测试程序的服务端做为测试服务程序(在本本上,当然没有移植到wince下) 然后照网上的例子,改了一个最简单的wince客户端 CCeSocket m_socket; UpdateData(TRUE); & ...… 查看全部问答∨ |
我现在要开发一个小产品,需要用到点阵液晶显示块。 由于产品比较小,而且成本要低,所以只能采用定制液晶玻璃的办法。液晶玻璃的基本参数就是80*32点阵。 主要功能就是:1、开机后显示固定汉字;2按键被按下后,显示八个数字,松开后接着显示开 ...… 查看全部问答∨ |
|
打算用DSP做图像采集处理系统,请问用TI的那个型号的DSP较好啊,我想用TMS320C6000系列,但不知道那个具体型号好些那,麻烦各位帮助解答一下,谢谢!… 查看全部问答∨ |
串口查询方式:单片机通信最常用的方式,也是与PC机通信最多的方式。 心得:主要熟悉串口寄存器的设置,本人遇到一个问题,通信方式的设置,例如采用11.0592M晶振,UBRR=71,正常模式下,波特率是9600;倍速模式是19200.提醒大家看手册的时候注意U ...… 查看全部问答∨ |
在DVD上的M8固件库与IAR编译器一起会发现错误。但其怪的是他的版本号与我所用的(在IAR上正常编译)的一样! 请大家分析! /** ****************************************************************************** &nbs ...… 查看全部问答∨ |
LM258组成的电压比较器,最高能测多高频率的信号, 组成的电压比较器反应时间如何计算?最高能测的频率如何计算? 小弟在网上找了好多资料都搞不懂,望帮帮忙。… 查看全部问答∨ |