單片機源程序如下:
- #include<c8051f020.h>
- #define SYSCLK 11059200
- #define BAUDRATE 9600
- typedef unsigned char unchar;
- bit flag=0;
- unchar a;
- sbit ren=P0^2;
- int i;
- void Port_config(void)
- {
- XBR0=0X04;
- XBR2=0X40;
- P0MDOUT=0X05;
- }//對端口進行配置
- void AXTL_config1()
- {
- int i;
- OSCXCN=0X67;
- for(i=0;i<256;i++);
- while(!(OSCXCN&0X80));
- OSCICN=0X88;
- } //對晶振進行配置
- void uart0_init()
- {
- TMOD=0X20;
- CKCON=0X10;
- SM00=0;
- SM10=1;
- TH1=0XFD;
- TL1=0XFD;
- TR1=1;
- //REN0=1;
- }//設置定時器1工作在方式2,8位自動重裝,設置串口UART0工作在方式1,給高低8位重裝初值,啟動定時器1,
- void main()
- {
- WDTCN=0xde;
- WDTCN=0xad;
- Port_config();
- AXTL_config1();
- uart0_init();
- EA=1;
- ES0=1;
- REN0=1;
- ren=0;
- while(1)
- {
- if(flag==1)
- {
-
- ES0=0;
- ren=1;
- SBUF0=a;
- while(!TI0);
- TI0=0;
- ES0=1;
- flag=0;
- }
-
- }
- }
- void ser() interrupt 4
- {
- if(RI0==1)
- { RI0=0;
- //P0=0x00;
- a=SBUF0;
- flag=1;
- }
- }
復制代碼
所有資料51hei提供下載:
c8051f020與max487通信.rar
(21.02 KB, 下載次數: 16)
2018-9-10 11:35 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
|