就是個簡單的串口收發的51單片機源程序親測可用。
單片機源程序如下:
- #include<reg52.h>
- #define uchar unsigned char
- #define uint unsigned int
- typedef signed char int8;
- typedef signed int int16;
- typedef signed long int32;
- //typedef unsigned char uint8;
- //typedef unsigned int uint16;
- typedef unsigned long uint32;
- sbit FM=P3^5; //HJ-C52 P1.2 把J5跳線接上
- sbit P10=P1^0;
- uchar buf;
- void delay(uint k)
- {
- uint j;
- for(;k>+0;k--)
- for(j=110;j>=0;j--);
- }
- void UartSendByte(uchar byte)
- {
- SBUF = byte;
- while(!TI);
- TI = 0;
- }
- void UartSendString(uchar *string)
- {
- while(*string)
- {
- UartSendByte(*string++);
- }
- }
- void main(void)
- {
- FM=1;
- P10=1;
- SCON=0x50;//設定串口工作方式0101 0000
- PCON=0x00;
- TMOD=0x20;
- EA=1;
- ES=1;
- TL1=0xfd;
- TH1=0xfd;
- TR1=1;
- while(1)
- {
- UartSendString("55468548545613843\r\n");
- delay(1);
- }
- }
- //串行中斷服務函數
- void serial() interrupt 4
- {
- ES=0;
- RI=0;
- buf=SBUF;
- switch(buf)
- {
- case 0x31:P10=~P10;FM=~FM;break; //二進制 0011 0001 十進制 49 控制字符 1 16進制 0X31
- }
- ES=1;//串口中斷
- }
復制代碼
所有資料51hei提供下載:
36-1、串口通信實驗.zip
(34.3 KB, 下載次數: 86)
2018-4-21 16:46 上傳
點擊文件名下載附件
附件
|